Lazarus на Qt (устал).

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Tuma
незнакомец
Сообщения: 7
Зарегистрирован: 03.07.2010 23:39:43

Lazarus на Qt (устал).

Сообщение Tuma »

Добрый день, коллеги!
Пытаюсь собрать Lazarus на Qt.
Командую:
make PREFIX=/usr clean all LCL_PLATFORM=qt OPT="-dUSE_QT_45"

Получаю:
Linking ../lazarus
/usr/bin/ld: cannot find -lqt4intf
lazarus.pp(129,1) Error: Error while linking
lazarus.pp(129,1) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted


Расскажите пожалуйста как нужно правильно собирать Lazarus под Qt. А то я уже устал искать эти либы, ошибки и пр..
Tuma
незнакомец
Сообщения: 7
Зарегистрирован: 03.07.2010 23:39:43

Сообщение Tuma »

Спасибо!
Проблема решается простым копированием в /usr/lib и запуском ldconfig из под рута.


А то что интерфейс стал таким кривым - это нормально?
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

Я под Qt не сижу, так что ничего сказать не могу.
Tuma
незнакомец
Сообщения: 7
Зарегистрирован: 03.07.2010 23:39:43

Сообщение Tuma »

У меня сбились настройки шрифта. Подскажите пожалуйста какие настройки по умолчанию.
Аватара пользователя
VirtUX
энтузиаст
Сообщения: 880
Зарегистрирован: 05.02.2008 09:52:19
Откуда: Крым, Алушта

Сообщение VirtUX »

Tuma писал(а):У меня сбились настройки шрифта.

Tuma писал(а):А то что интерфейс стал таким кривым - это нормально?

первый раз слышу о таком эфекте... уже не первый год работаю под Qt!
Tuma писал(а):ldconfig из под рута.

этого можно было и не делать.
Tuma писал(а):make PREFIX=/usr clean all LCL_PLATFORM=qt OPT="-dUSE_QT_45"

Если Lazarus из последних SVN 0.9.29, то проще:
make PREFIX=/usr clean all LCL_PLATFORM=qt
все подробности тут
В последних ревизиях Qt лучше допилен чем GTK2. ИМХО советую разобраться со всеми багами, и оставаться с Qt виджетом.
Tuma
незнакомец
Сообщения: 7
Зарегистрирован: 03.07.2010 23:39:43

Сообщение Tuma »

VirtUX
Спасибо! Пересобрал сегодняшний Lazarus с Qt+Qt4Pas.
Всё на ура. Если поставить шрифт Fixed [misc] глюков вроде действительно нету. :D
Вопрос теоретический - а что, он (Lazarus) одним исполняемым файлом собирается?
Т.е. я могу скопировать lazarus в /bin и за всё остальное он в процессе работы уже не завязан?
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Tuma писал(а):Т.е. я могу скопировать lazarus в /bin и за всё остальное он в процессе работы уже не завязан?

Lazarus - это только среда разрабортки, а Ваша программа будет использовать множество дополнительных модулей, которые к Lazarus'у не имеют никакого отношения. Это первое. Второе, свой проект Вы будете компилировать компилятором... Ну и так далее...;)
Ваш вопрос звучит так: "Если я отключу свою стиральную машину от водопровода, выдерну вилку из розетки, не буду покупать стиральный порошок, будет ли она мне стирать белые вещи как тайд в телерекламе?" :D
Tuma
незнакомец
Сообщения: 7
Зарегистрирован: 03.07.2010 23:39:43

Сообщение Tuma »

Да я уже разобрался где он лежит. Переписал бывшую установку новой.

Ваша программа будет использовать множество дополнительных модулей, которые к Lazarus'у не имеют никакого отношения.

Правильно ли я понимаю, что собранные Lazarus'ом модули (исполняемые файлы) сами по себе уже не будут требовать установленного Lazarus'а и FPC для своего полноценного функционирования?
Аватара пользователя
VirtUX
энтузиаст
Сообщения: 880
Зарегистрирован: 05.02.2008 09:52:19
Откуда: Крым, Алушта

Сообщение VirtUX »

Tuma писал(а):Правильно ли я понимаю, что собранные Lazarus'ом модули (исполняемые файлы) сами по себе уже не будут требовать установленного Lazarus'а и FPC для своего полноценного функционирования?

Не будут, НО! Не забывайте к инсталятору своей проги добавить libQt4Pas.so!
Tuma
незнакомец
Сообщения: 7
Зарегистрирован: 03.07.2010 23:39:43

Сообщение Tuma »

Не забывайте к инсталятору своей проги добавить libQt4Pas.so!

Как? Опять зависимости?
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

Аватара пользователя
VirtUX
энтузиаст
Сообщения: 880
Зарегистрирован: 05.02.2008 09:52:19
Откуда: Крым, Алушта

Сообщение VirtUX »

Tuma писал(а):Опять зависимости?

Есно :) GTK2-виджет требует наличия GTK2-библиотек, Win32-виджет требует Win32 библиотек, ну а Qt - Qt-библиотек. Под Linux, при использовании KDE окружения, практически все библы Qt уже стоят, НО - для паскалевских вызовов нужна еще и libQt4Pas.so, которой по умолчанию нет. Поэтому или в readme к своей проге пишите о необходимости скопировать оную библу в /usr/lib/, или добавляйте ее в свой rpm(deb, tar.gz, etc) пакет.
Tuma
незнакомец
Сообщения: 7
Зарегистрирован: 03.07.2010 23:39:43

Сообщение Tuma »

GTK2-виджет требует наличия GTK2-библиотек, Win32-виджет требует Win32 библиотек, ну а Qt - Qt-библиотек

Это понятно и естественно. Но то что
для паскалевских вызовов нужна еще и libQt4Pas.so

затрудняет использование Lazarus'а на Qt в полях, и несколько расстраивает меня лично.
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

Tuma писал(а):расстраивает меня лично.

И не только вас, но пока fpc не научиться поддерживать нативные C++ классы это неизбежно.
Ответить