Здравствуйте. Имею на руках SK-MAT91SAM9G45 + SK-MI0430FT-Plug. Стоит задача написать небольшое приложение с графическим интерфейсом и
запустить его целевой машине. Соответственно встал вопрос о выборе инструмента. Выбор пал на Qt creator. (Буду очень признателен, если
посоветуете ещё что-нибудь) .
Так как опыта работы в Linux у меня немного, а опыт работы с Qt вообще отсутствует я столкнулся с целым рядом сложностей. Основная
проблема связанна с тем, что нет четкого понимания, что необходимо сделать и что в итоге получить. После прочтения кучи статей и поковырявшись
ни один час самостоятельно пришел к выводу, что как минимум необходимо:
1. Установить Qt Creator
2. Собрать правильно настроенный buildroot
3. Собрать Qt для ARM
В моем распоряжении есть отдельно установленная Ubuntu и установленный на виртуальность Debian ( тот-что в комплекте ).
С первым пунктом никаких сложностей не возникло, а вот дальше началось самое интересное. Для Ubuntu
1. Скачал buildroot
2. Разархивировал в папку в корне BR
3. cd /BR
4. make xconfig.
В открывшемся окне с настроек я лишь переставил
Target Archetitecture на arm
Target Archetitecture Variant на generic_arm
В разделе Toolchain Enable support C++
В разделе Packege Selection for the target в подразделе Graphic libraries .... Отметил Qt
5. make Процесс длился очень долго(несколько часов переодически вылетали ошибки об неустановленных пакета, их было исправить не мудрено)
6. Далее как я понял автоматически началась автомачисеская сборка qmake. В итоге вылетела ошибка.
Я заглянул в output/build/qt4.7.2/bin - тут появился тот самый долгожданный qmake. При попытке засунуть его в Qt Creator, возникла
проблема Не удается определить ABI. (Что это может значить и как это лечить) Далее я попыталсясобрать qmake ещё раз
cd /BR/output/build/qt4.7.2/
./config (В надежде что уже всё сконфигурированно на предудущем этапе)
make. И тут опять таже проблема.
I.uic/release-shared -o .obj/release-shared/qrc_stylesheet.o .rcc/release-shared/qrc_stylesheet.cpp
.rcc/release-shared/qrc_stylesheet.cpp:160:76: ошибка: expected primary-expression at end of input
.rcc/release-shared/qrc_stylesheet.cpp:160:76: ошибка: expected «}» at end of input
.rcc/release-shared/qrc_stylesheet.cpp:160:76: ошибка: expected «,» or «;» at end of input
make[3]: *** [.obj/release-shared/qrc_stylesheet.o] Ошибка 1
make[3]: Выход из каталога `/home/nrt/BR/buildroot-2011.11/output/build/qt-4.7.4/examples/widgets/stylesheet'
make[2]: *** [sub-stylesheet-make_default] Ошибка 2
make[2]: Выход из каталога `/home/nrt/BR/buildroot-2011.11/output/build/qt-4.7.4/examples/widgets'
make[1]: *** [sub-widgets-make_default] Ошибка 2
make[1]: Выход из каталога `/home/nrt/BR/buildroot-2011.11/output/build/qt-4.7.4/examples'
make: *** [sub-examples-make_default-ordered] Ошибка 2
Если кто знает подскажите пожалуйста, что этьо значит и как можно поправить.
На Debaine я пробовал проделовать тоже самое, за исключением лишь скачивания нового Buildroot, использовал тот который уже был установден. Там
уже было собрано qmake. Я попробовал сразу подпихнуть эту qmake Qt Creator но он мне выдал, что неустановлено ниодного инструментария.
Если кто может объясните что, я делаю не правельно или дайте последовательность действий которая приведёт к правельной сборке qmake, которую
Спасибо за статейку, но я её раньше уже видел. Насколько я понял там речь идет об удалённой отладке на целевой машине. А сам процесс сборки Qt и в частности qmake там не рассматривается.
При наличии buildroot с этим проблем вообще никаких нет - галок наставить и make (в статье кстати он и используется, только название какое-то завуалированное :), там же описано как решить проблему что creator не узнает qmake (spec файл не тот) - я по-другому делал, но думае статье тоже можно верить.
имхо - дешевле скачать новейший билдрут, настравить галок и собирать под просмотр фильма. поглядывая в консоль иногда. потом поставить креатор и объяснить ему пути до qmake.
хм.. складно пишут линуксист и кунэикст про галочки, ну прям, как махровые гуевые мышевозы.. а как же дух спартанский от командной строки в голой консоли..
ну да-да.. понимаю.. 2ГБ консоль не осилит - подавится..
кстати о свежайшем (ака новейшем) - месяца три назад, брал наисвежайшего. цель - собрать QT под 9g45..
раз десять собирал "с нуля" - все что угодно собиралось и запускалось на платформе. заветная галочка на QT - и все.. нигугу, даже не грузилась система.. помыкался, да и плюнул, отложив на момент, когда совсем делать нечего будет..
да ставил.. и отдельно и дебьян наисвежайший и гиг, сколько не жалко - "все равно конфетти предлагают.."
полагаю, что очередной умник решил, что "ключ -P, лучше чем ключ -p" - вот карточный домик и не собирался, точнее собирался, но не работал на платформе..
зы: а виртуалок у меня штук 6-8 и еще столько же разбросано по другим винтам (после эвакуации) и еще архивы с прибитых виртуалок..