Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПОУК / 09 семестр / Книги и методические указания / Руководство программиста в Photon.doc
Источник:
Скачиваний:
364
Добавлен:
04.03.2014
Размер:
7.99 Mб
Скачать

Дополнительные опции

Если Вы хотите задать опции командной строки для pwm или сервера photon, Вы должны использовать следующие переменные окружения:

  • PWMOPTS

  • PHOTONOPTS

Чтобы установить эти переменные окружения, используйте ярлык "Environment" (в "system program" "Панели управления Windows"). Подробности об опциях командной строки для любой утилиты QNX см. в "Справочнике утилит QNX Neutrino".

Файловые имена с буквами в обоих регистрах

При переводе PhAB'овского проекта из QNX в Windows Вы можете столкнуться с проблемами, связанными с регистрами, в которых написаны имена файлов. QNX и UNIX-системы обращают внимание на регистры букв в именах файлов, тогда как Microsoft Windows – нет. Это приводит к следующим основным проблемам:

  • Потеря оригинальных регистров букв в именах файлов при переводе. Одним из способов "добиться" этого – копирование всех файлов одновременно с использованием FTR. Например, файл IntHandler.C может на компьютере-адресате стать INTHANDLER.C или inthandler.c, что приведёт к ошибкам компиляции или линковки.

Одним из способов избежать этого – это использование под QNX утилиты zip для создания единого сжатого файла, и затем использование Winzip под Windows для распаковки zip-файла. Winzip учитывает регистры букв распаковываемых файлов.

  • Потеря целых исходных файлов, чьи имена различаются только регистрами букв. Windows не хранит в одной директории несколько файлов, отличающихся только регистрами букв в именах. Здесь мы ничего не можем поделать, потому что это основа собственно Windows. Перед тем как переводить проекты из QNX в Windows, переименуйте такие файлы, так чтобы их имена отличались не только регистрами букв.

DDD– Отладчик Отображения Данных

DDD (Data Display Debugger) – это визуальный отладчик, предоставляющий графический интерфейс для GDB. Вы можете загрузить DDD для кросс-разработки QNX в Windows из экспериментального раздела на http://qdn.qnx.com.

 Проверьте, что загружаемая версия совпадает с текущей версией Вашего пакета кросс-разработки QNX.

Более полную информацию о DDD см. на http://www.gnu.org/software/ddd.

Если Вы установили DDD, Вы можете изменить предустановки ("Preferences") PhAB'а, так чтобы использовать DDD как отладчик по умолчанию (вместо версии gdb, работающей из командной строки). Вы можете использовать DDD и вне PhAB, просто набрав в командной строке Windows команду ddd -debugger ntox86-gdb ...

 DDD, равно как и PhAB, в настоящий момент не выполняется под Windows 95/98/Me.

DDD является приложением X Windows System, что подразумевает, что у Вас должен быть запущен на компьютере Х-сервер, для того чтобы отображать DDD. Когда DDD стартует, он использует любой Х-сервер, который уже запущен. Если ничего не запущено, стартует простой принимаемый по умолчанию Х-сервер.

Строка запуска отладчика

В диалоге "Build+Run" PhAB'а есть кнопка "Advanced Options", вызывающая диалог "Build Preferences" (более подробно см. главу "Генерация, компиляция кода и запуск на исполнение"). Здесь Вы можете определить команду отладчика, которую будет использовать PhAB. По умолчанию PhAB в Windows принимает команду:

gdb.bat -debugger nto$TPR-gdb --symbols

Она запускает команды пакетного файла gdb.bat. Если Вы установили DDD и хотите запускать его в качестве принимаемого по умолчанию отладчика, просто измените gdb.bat на ddd.bat и оставьте всё остальное как было.

PhAB автоматически устанавливает переменную окружения TPR перед вызовом команды отладки. Она содержит имя текущего целевого процессора, как он был определён при последнем исполнении построения проекта. В настоящий момент возможными значениями являются х86, ppc, mips, sh и arm. Наличие этой переменной в команде отладки приводит к автоматическому выбору нужного исполняемого файла отладчика для DDD.

Наконец, поскольку версия PhAB под Windows никогда не используется для хостинга самого себя, PhAB передаёт опцию --symbol в GDB по умолчанию. Это аналогично команде symbol отладчика GDB и делает символы загрузки gdb из PhAB исполняемыми, не делая его программой исполняемой, когда Вы используете команду run. Это позволяет Вам запустить исполняемый файл на удалённом компьютере. Вот команды инициализации из типичной сессии отладки после того, как был запущен DDD или GDB с использованием принятой по умолчанию командной строкой запуска:

(gdb) target qnx com1

(gdb) upload myprog

(gdb) run myprog

(gdb) break main

(gdb) continue

Мы здесь предполагаем, что мы подсоединены к целевой машине через последовательный порт com1 и что удалённый агент отладки pdebug на целевой машине уже запущен.