Если вы начинаете работать над новым проектом, то теперь появилась возможность выбора между Photon и Qt.
Задача - перевести старый проект с QNX 4 на 6.5. Проект консольный.
Например, для настройки целевой системы QNX на инструментальной Linux с Qt Creator 2.7 надо сделать следующее:
Сделано.
Если возникнут сложности с настройкой SSH в QNX, то это описано в нашем
FAQ по QNX.
Сделано. Спасибо за FAQ.
UPD: Если что-то не получается, то я могу попробовать помочь. Для этого напишите подробнее[/url].
Инструментальная система: Windows 7, Qt 5.1.1, Momentics 4.7 (qnxsdp-6.5.0SP1-201206261830-win32.exe), qt_qnx_2011-02-24b.zip
Целевая система: QNX 6.5 SP1 на x86 32 битная (qnxsdp-6.5.0-x86-201007091524-nto.iso). Установлена в VirtualBox.
Вопросы:
1. Можно ли удалить Моментикс? Если можно, то как правильно этот сделать? (я попробовал - все перестало работать)
2. Какой компилятор нужно установить в настройках Qt (Options->Build&Run->Compilers->Add и далее - из какого пути, с какими параметрами).
У меня сейчас такие параметры
Name: GCC,
Compiler path: D:\Programs\QNX6.5\host\win32\x86\usr\bin\ntox86-gcc.exe,
Platform codegen flags: -spec D:\Programs\QNX6.5\target\qnx6\usr\share\qt4\mkspecs\unsupported\qws\qnx-i386-g++
ABI: сбрасывается, пытался выставить там custom-x86-linux-generic-elf-32bit
3. Какой профиль Qt должен быть задан (Options->Build&Run->Qt Versions->Add и далее)
У меня сейчас
Version name: Qt for QNX
qmake location: D:\Programs\QNX6.5\host\win32\x86\usr\bin
Qt version 4.7.1 for Desktop - details - много разных параметров
---- details - все поля пустые, при нажатии на <Build> ничего не собирается.
4. В комплектах (Options->Build&Run->Kits->Add)
Задано:
Name: QNX GCC
Device type: QNX Device
Sysroot: D:\Programs\QNX6.5\target\qnx6\x86
Compiler: GCC
Debugger: D:\Programs\QNX6.5\host\win32\x86\usr\bin\ntox86-gdb.exe
Qt version: Qt for QNX
Qt mkspec: unsupported\qws\qnx-i386-g++
В каждом файле проекта приходится руками прописывать для копирования на целевую систему
qnx-* {
target.path = /../home
INSTALLS += target
}
Вопросы:
1. Где должны быть библиотеки на целевом устройстве? (делал по методичке)
Распаковать архив qt_qnx_targets.tar.gz.
(При распаковке должен появиться каталог target)
Перейти в подкаталог target/qnx6/
Выполнить команды:
cp –rf /target /usr/qnx650
cp –rf /target/qnx6/usr/photon/font_repository /usr/photon/
3. В пути для Qt-ных include приходится добавлять в начало qt4/QtCore/,
т.е. писать
#include <qt4/QtCore/QString>
вместо
Это так и должно быть?
4. Что я еще делаю не так?
Для запуска программ с использованием Qt на целевой системе необходимо добавить в профиль /etc/profile строчку
export LD_LIBRARY_PATH=/target/qnx6/x86/usr/lib:$LD_LIBRARY_PATH