Ник:
Пароль:

Контакты

E-mail: info@starterkit.ru
тел.: +7 922 680-21-73
тел.: +7 922 680-21-74
Телеграм: t.me/starterkit_ru
Партнеры:
otladka.com.ua - г.Киев

Способы оплаты

User Info


Добро пожаловать,
Guest

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

ПользователейПользователей:0
Поисковых ботовПоисковых ботов:2
ГостейГостей:1

ОбновитьПодробнееВсегоВсего:3
Форум » starterkit.ru » Embedded Linux
Ставим Qtopia (qt)
BallHome
Добавлено 09.01.2011 21:52 Редактировалось 09.01.2011 23:21 Сообщение: 51
BallHome
0

Пункты: 976
Регистрация: 27.09.2010
Пол: Мужчина
Дело обстоит так... Ядро собирал последнее linux-2.6.35-sk от sasamy, компилятором freescale gcc-4.1.2-glibc-2.5-nptl-3, им же собиралось и все остальное. buildroot-2010.11 как я уже говорил. В нем выбираю Qt. GUI 32bit, шрифты все кроме японского, Qt freetype2, JPEG Qt, zLib Qt, только Framebuffer, только tslib, без клавиатуры. Собираю, закидываю на плату. В QT Creator выбираю пример, подключаю полученный qmake, собираю, кидаю на плату. Запускаю с параметром -qws. Мелькает стрелка - и привет, Segmentation fault.
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 09.01.2011 23:26 Сообщение: 52
sasamy
4.70

Пункты: 78097
Регистрация: 14.08.2009
Все вроде верно. Соберите strace - она есть в buildroot. Выхлоп ее конечно сложнеоват но это лучше чем искать иголку в стоге сена. Возможная приччина - скопированы не все либы libc из тулчейна. Не долюбливаю фрискейловские инструменты - ltib ихний (вернее он не их - выбор их ltib в качестве системы сборки) вообще пипец какой-то. Тулчейном ихним ниразу не пользовался.
Спуститься к концу Подняться к началу
Персональная информация
Hermes
Добавлено 09.01.2011 23:37 Сообщение: 53
Hermes
5

Пункты: 3383
Регистрация: 02.04.2010
вчитался в предыдущее сообщение и понял. для Qt 4.5 и выше (buildroot использует помойму версию Qt 4.6.x) нужен gcc версии 4.3 или даже выше, а у вас 4.1.2.... дело скорей всего в немю buildroot позволяет собрать 4.3 и выше
Спуститься к концу Подняться к началу
Персональная информация
BallHome
Добавлено 10.01.2011 00:02 Сообщение: 54
BallHome
0

Пункты: 976
Регистрация: 27.09.2010
Пол: Мужчина
Да в целом то ltib не плох, но мне, почему то, buildroot больше понравился. Собирал я и тулчейном из buildroot - результат был тот же. Пока оставил от ltib, время покажет.
Я запустил на плате в отладке при помощи GDB Qt пример mousecalibration, и он падает на строчке - message.setText("...")
Что выдал strace я пока изучаю. Чую с шрифтами дело не чисто.
Спуститься к концу Подняться к началу
Персональная информация
BallHome
Добавлено 10.01.2011 00:05 Сообщение: 55
BallHome
0

Пункты: 976
Регистрация: 27.09.2010
Пол: Мужчина
Мне buildroot-2010.11 загружает Qt версию 4.7.1
Спуститься к концу Подняться к началу
Персональная информация
sasamy
Добавлено 10.01.2011 04:35 Редактировалось 10.01.2011 04:43 Сообщение: 56
sasamy
4.70

Пункты: 78097
Регистрация: 14.08.2009
Цитата
Мне buildroot-2010.11 загружает Qt версию 4.7.1


В общем в qt 4.7.1 баг. Вот патч:
http://sasamy.narod.ru/qt-4.7.1-unaligned_access.patch

положите его в buildroot-2010.11/package/qt/ и пересоберите qt - просто грохнуть директорию buildroot-2010.11/output/build/qt-everywhere-opensource-src-4.7.1 и потом make в корне buildroot-2010.11.

До кучи еще для tslib патч:
http://sasamy.narod.ru/tslib-1.0-UnknownEventType0.patch

положить его в
buildroot-2010.11/package/tslib/
если там ничего подобного нет - баг годами известный - в консоли сыплются сообщения
Цитата

tslib: Unknown event type 0


а в буилдруте до сих по не шевелятся.
Спуститься к концу Подняться к началу
Персональная информация
BallHome
Добавлено 10.01.2011 12:31 Редактировалось 10.01.2011 12:48 Сообщение: 57
BallHome
0

Пункты: 976
Регистрация: 27.09.2010
Пол: Мужчина
Итак... Отчет о проделанной работе...
Выполнил я в точности как посоветовал sasamy, только правда сделал полную чистку, на всякий случай, и о чудо - все заработало! Тулчейн по прежнему от freescale.
Огромное спасибо всем кто принимал участие в решении проблеммы, ну особенно - респект sasamy.
Спуститься к концу Подняться к началу
Персональная информация
Jury093
Добавлено 25.02.2011 16:16 Сообщение: 58
Jury093
4.5

Пункты: 54233
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
чуть пощупал эту "кутопию"..
в оффлайне (без инета) собрал кросскомпилером пакет Qt4(qtopia-core-opensource-src-4.3.3.tar.gz), мелкие демки пошли, чуть что покруче - выпадали с криками..
уже потом, почитав совет Саши, поставил strace, увидел чего не хватает..
дальше копать не стал, сказал apt-get install qt4-demos
само вытянулось, поставилось, запускабельно:

1. типа демобраузер
title

2. типа демоэксель
title

На любой вопрос есть любой ответ.
Спуститься к концу Подняться к началу
Персональная информация
dx
Добавлено 01.03.2011 15:13 Сообщение: 59
dx
3.5

Пункты: 7618
Регистрация: 26.10.2010
Пол: Мужчина
Из: Ukraine, Kiev city
добрый день, возникла проблема. выставил в buildroot 2010.05 qt.
делаю make, а в ответ получаю ошибку:
Цитата

../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp: In function 'void* QTJSC::currentThreadStackBase()':
../3rdparty/javascriptcore/JavaScriptCore/runtime/Collector.cpp:682: error: 'pthread_getattr_np' was not declared in this scope

поискав в интернете нашел что нужен ключ -no-webkit, но вот как его задать???
Спуститься к концу Подняться к началу
Персональная информация
MTh
Добавлено 12.03.2011 16:58 Редактировалось 16.03.2011 18:09 Сообщение: 60
MTh
0

Пункты: 921
Регистрация: 19.09.2010
А кто-нибудь с талкивался с проблемой компиляции (пробовал на examples и demos и собственное простое приложение с диалогом и лейблом) - выдает ошибку undefine reference q_atomic_lock()

Собирал QTopia по мануалу nuvoton... единственное что добавил два ключа - nomake demos -nomake example - по причине того что они не собирались. Но я так понимаю что самое простое приложение должно собраться?

UPD: тут обратил внимание - после того как выполняется configure выскакивает сообщение что текущая платформа не поддерживает атомарные операции и все что их использует работать не будет. Я похоже что-то не понимаю, потому что даже простенький вызов окошка использует q_atomic_lock.

UPD: платформа NUC950
UPD: разобрался - при конфигурировании флаги касающиеся платформы и little-endian указал неправильно...
Спуститься к концу Подняться к началу
Персональная информация
Форум » starterkit.ru » Embedded Linux