Перейти к содержанию

    

Графика для Linux.

Так без goto жизни нет вообще :) Особенно в kernel'е.

 

Сам сейчас занят аналогичной проблемой - созданием GUI. После долгих размышлений пришел к выводу, что нужно писать все самому.

 

Я бы не был настолько категоричен. Все-таки рисование графических примитивов и работу с рисунками (хотя бы .bmp) работу со шрифтами (желательно UTF-8 .ttf) проще использовать готовые. Так же как и каркас обработчика событий.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Работа с .bmp пишется и отлаживается за день. Использование .ttf во встраиваемых приложениях представляется сомнительным - растровые шрифты получаются компактнее и быстрее.

 

А всякие хитрые виджеты все равно приходится делать свои.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Долго мучался со вводом с клавиатуры, а все оказалось очень просто:

 

Для FLTK нужны скан-коды, а у меня nano-X был скомпилен с драйвером tty, который всегда возвращает из функции TTY_Read() *scancode = 0. Пересобрал nano-X с драйвером tty-scan, и ввод заработал!

К сожелению драйвер pipe (kbd_pipe.c), который я использую на девайсе тоже не возвращает скан-код, надо будет что-то с ним делать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Решил посмотреть, как в FLTK 1.1.x поддержка многопоточности сделана так же, как в microwindows - никак. Только в 2.0 появилась. Предлагается синхронизировать через за файл - пайп или сокет.

2.0 на DirectFB не портирован, а под nano-X подозреваю, тормозить будет сильно.

Кто-нибудь сравнивал, насколько FLTK на nano-X тормознее microwindows приложения?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Избавился от бордюра окна в FLTK+nano-X!

Запускал:

nano-X& nanowm& myApp

Оказывается, надо запускать без nanowm:

nano-X& myApp

 

Откуда FLTK берет шрифты? Как установить кодировку lable-ов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
/etc/fonts/fonts.conf

 

Это на стандартной Х11, наверное. На нано-Х этим занимается нано-Х. У нее там в исходниках прописана пара директориев. Важно, чтобы файл с описанием шрифтов там был. Приду на работу, гляну что и куда я там ставил.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос знатокам.

Посмотрел wxFormBuilder и сижу в недоумении.

Почему-то не работает размещение контролов по x,y (pos X,Y).

Это так задумано или только у меня не работает?

Если так и задумано, как это можно исправить до вменяемого человеческого варианта (типа VS), существует ли патч?

Потому, как сделать более менее сложный интерфейс не получается.

 

-

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Встроил в x86 с 24 Мб памяти и 300 МГц Qt Embedded 4.4.2. Все работает нормально. Только возникла проблема уменьшения времени запуска. Основной вес в статически слинкованном Qt приложении( 8 М ). Есть хороший паковщик исп. файлов UPX, только что-то для моего многопоточного прил. не подходит - при запуске сегментация и т.д. Хотел уменьшить за счет отключения фич в библиотеке с пом. qconfig, так она не компилится, говорит, что чего-то там не найдено. Пришлось отключать ненужное с пом. configure((

Как уменьшить еще размер Qt приложения?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Основной вес в статически слинкованном Qt приложении( 8 М ). Есть хороший паковщик исп. файлов UPX, только что-то для моего многопоточного прил. не подходит - при запуске сегментация и т.д. Хотел уменьшить за счет отключения фич в библиотеке с пом. qconfig, так она не компилится, говорит, что чего-то там не найдено. Пришлось отключать ненужное с пом. configure((

Как уменьшить еще размер Qt приложения?

 

Восемь мегабайт - это целый монстр. Паковать ничего не нужно. В принципе, в инете есть достаточно рабочих рецептов, например здесь http://www.prog.org.ru/index.php?topic=3974.msg17516 Единственная проблема, с которой сталкивался - это время потраченное на эксперименты. Троллтехи готовых рецептов не дают, даже по подписке т.к. обычно с выхоодм новой версии заново приходится экспериментировать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

При попытке портировать проект с использованием microwindows WIN32 API с arm-linux на blackfin-uClinux первое разочарование: На uClinux framebuffer, похоже, одновременно может работать только одно microwindows WIN32 API приложение - второе не может открыть framebuffer. Это связано с ограничением uClinux - не поддерживается вызов mmap(MAP_SHARED, PROT_WRITE, file). Вместо него используется mmap(MAP_PRIVATE, PROT_WRITE, file) для отображения framebuffer в память.

Наверное, переписывание под FLTK/nano-X решит проблему - там вроде все приложения используют один nano-X сервер, а значит и framebuffer открывается только один раз.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Давно уже не секрет что Qt почти год назад вышел под хорошей для всех лицензией - под LGPL. Никому ничего платить давно уже не надо. Интересует то, как этот факт повлиял на выбор средства реализации GUI автора темы и не только :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

http://www.antigrain.com/

есть виджеты (кнопки, метки и т.д). Работает на фрейм-буфер. Не помню,как обстоят дела с directfb но видимо никак

Я проводил сравнительные тесты cairo и agg при портировании Flash-плеера на SH4 (STi710x). По моим наблюдениям, cairo сильно проигрывает в скорости отрисовки. Так-же размер у AGG существенно меньше. По функционалу конечно не Qt, но для встраиваемых систем - самое то что нужно. Присутствует в репозитариях дебиана и убунту

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня вопросик, близкий по теме поэтому отдельную заводить не стал.

 

Надо на встроенной десктопной Убунте выводить на весь экран ту или иную картинку, формат картинки не принципиален (jpeg, bmp...) Скорость вывода картинки на экран не критична.

Ради такой фигни тащить на борду какой-нибудь GTK наверное нет смысла. Как это можно сделать попроще, желательно без задействования всяких сторонних пакетов, которые надо будет потом еще и кросскомпилировать (нативной компиляцией не пользуюсь) ?

 

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Надо на встроенной десктопной Убунте выводить на весь экран ту или иную картинку, формат картинки не принципиален (jpeg, bmp...) Скорость вывода картинки на экран не критична.

Ради такой фигни тащить на борду какой-нибудь GTK наверное нет смысла.

Какая именно у вас разновидность убунты? Потому что в той же десктопной Lubuntu, что предлагают на dl.cubieboard.org, «какой-нибудь GTK» уже есть:

➜  usr  find ./ -name 'libgtk*' -type f
./lib/arm-linux-gnueabihf/libgtk-3.so.0.600.0
./lib/arm-linux-gnueabihf/libgtk-x11-2.0.so.0.2400.13

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация