lazarus 3.0
lazarus 3.0
lazarus 3.0 требует fpc3.2.1, а у Вас установлен fpc3.2.2. В результате конфликт который либо не позволяет установить lazarus, либо не дает обновлять систему. Система требует fpc3.2.2 для обновления, а lazarus fpc3.2.1.
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Планируется ли lazarus 3.0 в Р12?
lazarus 3.0
я не планирую, за других не знаю.
lazarus 3.0
sjuk, А какие проблемы? Соберите из исходников.
В Росе это на раз-два и через 10 минут
у Вас свежий леопард с тем fpc который штатный
В Росе это на раз-два и через 10 минут
у Вас свежий леопард с тем fpc который штатный
lazarus 3.0
Я собирал с интерфейсом Qt - поэтому сначала поставил lib64Qt4Pas-devel
"-devel" делает правильные ссылки на библиотеки (fpc - не любит номеров версий)
Далее распаковал в домашнюю папку (откуда собираюсь запускать),
затем в консоли перешел в нее и команда make bigide LCL_PLATFORM=qt
"-devel" делает правильные ссылки на библиотеки (fpc - не любит номеров версий)
Далее распаковал в домашнюю папку (откуда собираюсь запускать),
затем в консоли перешел в нее и команда make bigide LCL_PLATFORM=qt
lazarus 3.0
а я на qt5 пытался (или qt6 не помню уже).
может его стоит хотябы на gtk3 переключить? в репозитарии на gtk2 он у нас
может его стоит хотябы на gtk3 переключить? в репозитарии на gtk2 он у нас
lazarus 3.0
Насколько я читал где-то GTK-3 еще сырой в Lazarus
Соберите в Qt и зависимость добавьте Lib64...
А пакет можно обозвать как lazarus-qt или что-то подобное
Соберите в Qt и зависимость добавьте Lib64...
А пакет можно обозвать как lazarus-qt или что-то подобное
lazarus 3.0
qt4 ну никак не можно. пусть уж лучше тогда на gtk2 побудет, версия 3.1 или 3.2 будет переключу на что-нибудь другое
lazarus 3.0
Так у вас в пробной версии Росы по моему уже есть libQt5Pas или я неправ?
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
с gtk3 действительно проблеммы. Надежда теплится, что в 3.0 улучшется
lazarus 3.0
sjuk, lazarus 3.0 установился.
Устанавливаем из репы
fpc-src
lib64gtk+2.0-devel
Потом качаете с https://sourceforge.net/projects/lazaru ... rus%203.0/
(fpc-3.2.2-1.x86_64.rpm и устанавливаете его, затем качаем и устанавливаем lazarus-3.0-0.x86_64.rpm).
Устанавливаем из репы
fpc-src
lib64gtk+2.0-devel
Потом качаете с https://sourceforge.net/projects/lazaru ... rus%203.0/
(fpc-3.2.2-1.x86_64.rpm и устанавливаете его, затем качаем и устанавливаем lazarus-3.0-0.x86_64.rpm).
Последний раз редактировалось turik02 10 янв 2024, 17:26, всего редактировалось 1 раз.
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
У меня копиляция с Qt5 не пошла
lazarus 3.0
А вот интересно почему прога, собранная с gtk2 работает, а с qt5 нет? Например, UI.
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Конечно. Я собирал также в OpenMandriva, где Lazarus изначально с Qt5 идет.
Собранная прога запускается, но действия не выполняет. Так что может быть и привязка к тулкиту, а GTK2 вроде по умолчанию.
lazarus 3.0
Делал на ROSA PLASMA 2021.1 (qt4)
Для компиляции надо было установить
sudo dnf install make fpc fpc-src gcc-c++ lib64qt4pas-devel
Скачал исходник lazarus 3 https://github.com/fpc/Lazarus/tags
Распаковал в папку /opt (папка или путь не должна содержать русские буквы, у меня было /opt/Lazarus-lazarus_3_0)
Вошёл в папку Lazarus-lazarus_3_0 и в терминале выполнил команду
make bigide LCL_PLATFORM=qt
После завершения компиляции запустил файл lazarus как обычный пользователь (наверное можно сделать файл ярлыка .desktop). Запускал как root, но открывалось пустое окно.
Для компиляции надо было установить
sudo dnf install make fpc fpc-src gcc-c++ lib64qt4pas-devel
Скачал исходник lazarus 3 https://github.com/fpc/Lazarus/tags
Распаковал в папку /opt (папка или путь не должна содержать русские буквы, у меня было /opt/Lazarus-lazarus_3_0)
Вошёл в папку Lazarus-lazarus_3_0 и в терминале выполнил команду
make bigide LCL_PLATFORM=qt
После завершения компиляции запустил файл lazarus как обычный пользователь (наверное можно сделать файл ярлыка .desktop). Запускал как root, но открывалось пустое окно.
lazarus 3.0
Собрал Lazarus 3.0 с Qt5 по умолчанию!!!
Все дело в ошибках в пакете lib64Qt5Pas1,
это ошибка разработчиков пакета
при компиляции проекта возникала ошибка
перезагрузки QTimer_singleShot поэтому:
1 - удалил штатный (тот который из репов) lib64Qt5Pas1
2 - скачал и установил отсюда
https://github.com/davidbannon/libqt5pas/releases
пакет libqt5pas-2.15-3.x86_64.rpm там ошибки устранены
3 - Поскольку файла "-devel" для скачаной версии нет,
нужно ручками создать ссылку:
sudo ln -s /usr/lib64/libQt5Pas.so.1.2.15 /usr/lib64/libQt5Pas.so
Далее скачать и распаковать исходник Lazarus,
перейти в эту папку и выполнить:
make bigide LCL_PLATFORM=qt5
Наслаждайтесь...
Все дело в ошибках в пакете lib64Qt5Pas1,
это ошибка разработчиков пакета
при компиляции проекта возникала ошибка
перезагрузки QTimer_singleShot поэтому:
1 - удалил штатный (тот который из репов) lib64Qt5Pas1
2 - скачал и установил отсюда
https://github.com/davidbannon/libqt5pas/releases
пакет libqt5pas-2.15-3.x86_64.rpm там ошибки устранены
3 - Поскольку файла "-devel" для скачаной версии нет,
нужно ручками создать ссылку:
sudo ln -s /usr/lib64/libQt5Pas.so.1.2.15 /usr/lib64/libQt5Pas.so
Далее скачать и распаковать исходник Lazarus,
перейти в эту папку и выполнить:
make bigide LCL_PLATFORM=qt5
Наслаждайтесь...
lazarus 3.0
а в чем ошибка? никаких ошибок при сборке не видно, даже Warning нет.
Последний раз редактировалось irton 29 янв 2024, 16:18, всего редактировалось 1 раз.
lazarus 3.0
Они на сайте пишут "удалена перегрузка QTimer_singleShot4(), поскольку ее нельзя использовать с Qt5 < 5.10"
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Не знаю, но при компиляции с вашим qt5pas ошибка была связана именно с QTimer_singleShot,
может там еще что-то поправлено, я не в курсе - по ссылке на GitHub еще исходники лежат,
может в них поподробнее расписано, я не знаю, но с их пакетом с пол-пинка скомпилилось.
Из Тестингов не пробовал, да теперь уже и собрал сам
может там еще что-то поправлено, я не в курсе - по ссылке на GitHub еще исходники лежат,
может в них поподробнее расписано, я не знаю, но с их пакетом с пол-пинка скомпилилось.
Из Тестингов не пробовал, да теперь уже и собрал сам
lazarus 3.0
irton, Вот ошибка, возникающая при использовании
lib64Qt5Pas из репозитория, обратите внимание на двойной слэш перед qt5, может из-за нее?
lib64Qt5Pas из репозитория, обратите внимание на двойной слэш перед qt5, может из-за нее?
- Вложения
-
- Ошибка.png (11.66 КБ) 17952 просмотра
lazarus 3.0
Но с Qtimer_singleshort3 все нормально в qt5pas.
двойной слеш не должен влиять
двойной слеш не должен влиять
lazarus 3.0
Я имел ввиду, что неверно формируется путь к файлу,
но это уже у разработчиков т.к. ошибки в файлах *.pas и *.ini,
у них версия 2.15 у вас 2.9 - скорее всего там поправлено...
но это уже у разработчиков т.к. ошибки в файлах *.pas и *.ini,
у них версия 2.15 у вас 2.9 - скорее всего там поправлено...
Последний раз редактировалось Oberon 31 янв 2024, 11:14, всего редактировалось 1 раз.
lazarus 3.0
нет, двойной // на путь не влияет можете сами проверить в консоли
Код: Выделить всё
$ cat .///mnt-router.mount
[Unit]
Description=Mount cifs windows share
Wants=network.target
After=network.target
lazarus 3.0
При компиляции в паскале у меня выдает ошибку при двойном слэше
lazarus 3.0
жесть какая.
lazarus 3.0
В данном случае это $ cat .// Здесь - любой комментарий например - /mnt-router.mount
Скорее всего дело в версиях 2.15 у них и 2.9 у вас
Извиняюсь - у вас даже 2.6.2.2...
Получается - если скомпилить lib64Qt5Pas 2.15, то и Лазаря можно будет собрать с поддержкой
Qt5 по умолчанию
lazarus 3.0
Эксперимент продолжается!
Выкачал отсюда:
https://github.com/davidbannon/libqt6pas/releases пакет libqt6pas6
установил и сделал ссылку:
sudo ln -s /usr/lib64/libQt6Pas.so.6.2.7 /usr/lib64/libQt6Pas.so
и собрал командой make bigide LCL_PLATFORM=qt6
Работает!!!
Насколько я знаю Роса 13 будет на Qt6,
может стоит собрать lib64Qt6Pas для Р12, да и Лазаря 3.0
можно с Qt6 по умолчанию...
Выкачал отсюда:
https://github.com/davidbannon/libqt6pas/releases пакет libqt6pas6
установил и сделал ссылку:
sudo ln -s /usr/lib64/libQt6Pas.so.6.2.7 /usr/lib64/libQt6Pas.so
и собрал командой make bigide LCL_PLATFORM=qt6
Работает!!!
Насколько я знаю Роса 13 будет на Qt6,
может стоит собрать lib64Qt6Pas для Р12, да и Лазаря 3.0
можно с Qt6 по умолчанию...
lazarus 3.0
Я не хочу решать на чем его делать. Qt6pas надо бы в репозитарий завезти, спасибо.
lazarus 3.0
Ну хотя-бы за qt6pas заранее спасибо!
lazarus 3.0
Я делал так:
Код: Выделить всё
make bigide LCL_PLATFORM=qt6 PREFIX=/opt/lazarus
sudo make bigide LCL_PLATFORM=qt6 PREFIX=/opt/lazarus install
Запуск с новым профилем:
Код: Выделить всё
/opt/lazarus/share/lazarus/lazarus --pcp=~/.lazarus3
Скомпилировалось быстро, но установочные файлы весят 1 ГБ.
Предварительно надо установить https://github.com/davidbannon/libqt6pas/releases
Сначала lib, потом dev.
Но для сборки Lazarus используются системные fpc и fpcsrc.
Т.е. по сути Lazarus IDE обновили, а компилятор fpc остался системный.
С Qt5/Qt6 прога UI работает, но окошко терминала ничего не пишет. С GTK2 норм.
Изначальный автор уже на связь не выходит.
Так что экспериментальные тулкиты могут нарушить работу некоторых приложений.
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Установил lazarus 3.0 из репов. Ни то что в qt5 не пересобирается, но и в gtk2 не пересобирается. Не получается даже пакеты штатные доустановить.
lazarus 3.0
ДонВенчензо, Я уже написал об этом в ветке "Программы для Роса десктоп"
Они скомпилили пакет qt5pаs (из кодов самого Лазаря) т.е. в принципе неправильно,
ведь библиотека виджетов создается при компиляции самого Лазаря с указаным
набором виджетов gtk2,qt или qt5 при этом в папке лазаря создается папка /units/x86_64-linux/gt5 или gtk2
а у них сделано от имени администратора, поэтому у пользователя прав нет,
я писал что нужно с github брать исходник и скомпилить его для Росы, жаль сам не умею, а они не хотят
P.S.
Lazarus по ходу тоже неверно собран - он должен создавать новую конфигурацию в папке ~/.lazarus,
а у них он пытается сделать это в системной папке от имени простого пользователя,
поэтому ни доп. пакетов ни изменение библиотеки LCL не работают
Они скомпилили пакет qt5pаs (из кодов самого Лазаря) т.е. в принципе неправильно,
ведь библиотека виджетов создается при компиляции самого Лазаря с указаным
набором виджетов gtk2,qt или qt5 при этом в папке лазаря создается папка /units/x86_64-linux/gt5 или gtk2
а у них сделано от имени администратора, поэтому у пользователя прав нет,
я писал что нужно с github брать исходник и скомпилить его для Росы, жаль сам не умею, а они не хотят
P.S.
Lazarus по ходу тоже неверно собран - он должен создавать новую конфигурацию в папке ~/.lazarus,
а у них он пытается сделать это в системной папке от имени простого пользователя,
поэтому ни доп. пакетов ни изменение библиотеки LCL не работают
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Такое поведение и в Lazarus 2.2.2 в Росе. Я создаю эту папку руками в ошибка пропадает. А вот в версии 3.0 новые ошибки выскакивают (не может найти interface.puu...вроде так).
У меня тоже тут проблема. Лезит в системные папки и говорит, что не может файл от туда удалить
lazarus 3.0
Я и говорю, неверно собран - поэтому в последнее время собираю сам в домашней папке,
но здесь огромный минус - если будете делать rpm пакет своей проги, то только с версией gtk2
потому-что иначе потребуется включение qt5pas библиотеки, а она у них нерабочая
но здесь огромный минус - если будете делать rpm пакет своей проги, то только с версией gtk2
потому-что иначе потребуется включение qt5pas библиотеки, а она у них нерабочая
lazarus 3.0
Я бы лучше собрал с gtk3, но об этом нет инфы.
lazarus 3.0
artenaki,
sudo dnf install make fpc fpc-src gcc-c++ lib64gtk+3.0-devel
Скачать исходник lazarus 3 https://github.com/fpc/Lazarus/tags
Распаковать архив
войти в папку Lazarus-lazarus_3_0
В терминале выполнить команду
make clean bigide
или
make bigide LCL_PLATFORM=gtk3
После завершения компиляции запустить файл lazarus как обычный пользователь (можно сделать файл ярлыка .desktop)
Для компиляции надо установить
sudo dnf install make fpc fpc-src gcc-c++ lib64gtk+3.0-devel
Скачать исходник lazarus 3 https://github.com/fpc/Lazarus/tags
Распаковать архив
войти в папку Lazarus-lazarus_3_0
В терминале выполнить команду
make clean bigide
или
make bigide LCL_PLATFORM=gtk3
После завершения компиляции запустить файл lazarus как обычный пользователь (можно сделать файл ярлыка .desktop)
lazarus 3.0
turik02 точно, спасибо. Собрал, но при запуске черные артефакты, нет меню. Не только я на это жаловался.
lazarus 3.0
artenaki, На сайте написано
С gtk2 (lib64gtk+2.0-devel) работает, а с gtk3 пока нет.Жаль.В настоящее время LCL поддерживает:
Linux/FreeBSD (GTK2, Qt4, Qt5 и Qt6)
все версии Windows (даже WinCE)
macOS (Какао, Карбон, GTK2, Qt4, Qt5, Qt6)
Существует экспериментальная поддержка:
GTK3
Солярис
LCL по-прежнему содержит код для GTK1, хотя этот целевой код устарел.
lazarus 3.0
Вы имеете ввиду компонент MainMenu, если да, то на форуме Lazarus говорят что это беда
версии 3.0 - в последней 2.2.6 все нормально, я откатился на 2.2.6,
ксатати вам не обязательно собирать самого Лазаря в Gtk3, если библиотеки
установлены - достаточно в параметрах проекта поменять библиотеку LCL,
по крайней мере у меня Лазарь на Gtk2 (по умолчанию), а проект я могу собрать и в
Gtk2 и в Qt5 и в Qt6.
lazarus 3.0
Прекрасная новость, библиотека libqt5pas из репозитария (lib64Qt5Pas-devel) заработала!!!
Сам Лазарь с ней собирать не пробовал, а вот проект с LCL qt5 собрался
без проблем!!! Кому спасибо сказать ?!!
Сам Лазарь с ней собирать не пробовал, а вот проект с LCL qt5 собрался
без проблем!!! Кому спасибо сказать ?!!
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Сейчас пробовал собирать Lazarus 3.0 на qt5 в Альте на виртуалке. Один пакет установил нормально(однооконность), а потом теже ошибки, что и у нас. Так и не собрался на qt5
lazarus 3.0
На форуме Лазаря много жалоб на 3.0, поэтому сижу пока на 2.2.6
lazarus 3.0
Ради спортивного интереса попробовал собрать Лазаря 3.0 с новой библиотекойДонВенчензо писал(а): ↑08 фев 2024, 22:41Сейчас пробовал собирать Lazarus 3.0 на qt5 в Альте на виртуалке
qt5pas из репов Росы - все работает и установка/удаление компонентов тоже,
но останусь на Лазаре 2.2.6, из-за недоработок в 3.0, например если вы используете
компонент MainMenu, то в режиме дизайна не видите его на форме, см.скрины одного
и того-же проекта в 2 и 3 Лазаре:
lazarus 3.0
8 дней назад был коммит в qt5pas спек, но там ничего не менялось радикально, просто спек упростил
lazarus 3.0
Это месяц назад было сделано.
lazarus 3.0
Мы с вами на эту тему общались 29 января несколькими комментами выше,
тогда еще точно была старая версия (я никогда не пропускаю обновлений),
ну да ладно - главное теперь я могу в Лазаре собрать приложение Qt5,
вот за это огромное спасибо, а то Gtk2 - прошлый век! И попутно вопрос,
создал Gui для avrdude (программатор AVR), но у меня нет желания связываться с GitHub или GitFlic,
могу я в ветке Программы для Росы выложить ссылки на Mail-облако -
исходники, rpm и prj для RPMCreator?
lazarus 3.0
Можно зарегится на abf и будет у вас свой гит т.е. abf не только гиты пакетов умеет хранить (конечно фичь всяких типа cl/cd не будет)
lazarus 3.0
Для меня это тёмный лес, старый я - пенсионер...
lazarus 3.0
Я бы сказал Qt4 это прошлый век, а GTK2 еще более менее.
Да и новое не значит лучшее, особенно когда дело касается Gnome.
Если не хотите связываться с github (он запросит двухфакторную авторизацию), есть более простые
https://notabug.org/
https://codeberg.org/
Но они менее надежны.
Да и новое не значит лучшее, особенно когда дело касается Gnome.
Если не хотите связываться с github (он запросит двухфакторную авторизацию), есть более простые
https://notabug.org/
https://codeberg.org/
Но они менее надежны.
lazarus 3.0
Скоро рипнут, да.
Пора задуматься какой GTK2 софт у вас остался.
У меня вот xfce4-terminal самосборный на GTK2 (нет глюков с цветами в ffmpeg в светлой теме). У самосборного xfce4-taskmanager с GTK2 нет глюков с отображением графика. В Universal GUI только в GTK2 работает окошко терминала. Leafpad.
Пора задуматься какой GTK2 софт у вас остался.
У меня вот xfce4-terminal самосборный на GTK2 (нет глюков с цветами в ffmpeg в светлой теме). У самосборного xfce4-taskmanager с GTK2 нет глюков с отображением графика. В Universal GUI только в GTK2 работает окошко терминала. Leafpad.
lazarus 3.0
От нас, в данном случае ничего не зависит. Gtk2 - это порождение Gimp и
все зависит от развития Gtk3 и разработчиков на Gtk - как скоро они
перекомпилируют свои приложения на новую библиотеку...
Насчет Gnome согласен с вами на все 100%, когда вышел Gnome3,
я ушел на Mate (форк Gnome2).
все зависит от развития Gtk3 и разработчиков на Gtk - как скоро они
перекомпилируют свои приложения на новую библиотеку...
Насчет Gnome согласен с вами на все 100%, когда вышел Gnome3,
я ушел на Mate (форк Gnome2).
lazarus 3.0
Вот rpm на qt5 вроде бы получилась https://gitflic.ru/project/turik02/laza ... nch=master
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Бегло попробовал. IDE пересобирается, пакеты добавляются, qt5 работает, с gtk3 пока проеты не собираются у меня.turik02 писал(а): ↑17 фев 2024, 06:33Вот rpm на qt5 вроде бы получилась https://gitflic.ru/project/turik02/laza ... nch=master
Проблем со сборками, которые были с lazarus из репозиториев я пока не заметил
lazarus 3.0
Вышла новая версия Lazarus 3.2.2, вроде много ошибок поправлено (более ранние версии тройки нет смысла пробовать).
Хочу всем порекомендовать не мучиться с установкой руками и воспользоваться замечательной программой:
fpcUpDeluxe
https://wiki.lazarus.freepascal.org/fpcupdeluxe/ru
Качаете запускной файл в отдельную папку (она нагадит туда конфигами):
https://github.com/newpascal/fpcupdelux ... ses/latest - в ROSA работают и -linux версия и -linux-qt5.
Она сама скачает исходники, настроит и запустит сборку fpc и Lazarus полностью автоматически.
Нацелена на изолированную установку нескольких версий Laz+fpc в разные папки.
Создаёт ярлык на рабочем столе для каждой версии.
У вас получатся независимые сборки Lazarus в отдельных каталогах, со своими компиляторами, своими наборами компонентов,
настройками IDE. Можно поставить одинаковые версии, но одну пересобрать под Qt5 интерфейс например. Или отдельные версии для работы с прошивками на всякие Repka Pi, ESP32. Отдельную версию под Android.
Парой кликов ставятся кросс-компиляторы (например под win или cpu RISC-V), позволяя вам сразу проекты компилить для нескольких ОС.
Пересборка интерфейса IDE делается мышкой из меню внутри Лазаря: "Сервис - Параметры сборки Lazarus, выбрать Библиотеку LCL". Просто из списка выбираете qt5,gtk2/3,MUI - "Собрать". Ошибки выдаст в лог, если что. Под тёмную тему Qt нужен ещё xml-набор по раскраске, где-то в вики есть список готовых, рекомендую "Breeze Dark" (см.скриншот).
Все что нужно сделать предварительно:
1. Установить пакеты git и make для работы самой fpcUpDeluxe.
2. Установить libGtk2-dev и libGtk3-dev с их зависимостями (pango, cairo, pixbuff), для сборки LCL Лазаря. (названия пакетов ± от дистра)
3. Для Qt в ROSA уже всё было, когда я последний раз ставил, но естественно devel пакеты нужны для компиляции программ с Qt виджетами.
Если каких-то пакетов будет не хватать, увидите в подробном логе fpcUpDeluxe.
4. Дебагер gdb по желанию.
В расширенных настройках установки fpcUpDeluxe можно сразу выбрать установить help (по F1 чтоб справку видеть), пакеты "единого окна" и "групп проектов".
И потом доустановить "Сетевой диспетчер пакетов - OPM". Или конкретный пакет, если уже знаете под что сборка.
Это реально удобно. Главное немного привыкнуть к странному интерфейсу.
Хочу всем порекомендовать не мучиться с установкой руками и воспользоваться замечательной программой:
fpcUpDeluxe
https://wiki.lazarus.freepascal.org/fpcupdeluxe/ru
Качаете запускной файл в отдельную папку (она нагадит туда конфигами):
https://github.com/newpascal/fpcupdelux ... ses/latest - в ROSA работают и -linux версия и -linux-qt5.
Она сама скачает исходники, настроит и запустит сборку fpc и Lazarus полностью автоматически.
Нацелена на изолированную установку нескольких версий Laz+fpc в разные папки.
Создаёт ярлык на рабочем столе для каждой версии.
У вас получатся независимые сборки Lazarus в отдельных каталогах, со своими компиляторами, своими наборами компонентов,
настройками IDE. Можно поставить одинаковые версии, но одну пересобрать под Qt5 интерфейс например. Или отдельные версии для работы с прошивками на всякие Repka Pi, ESP32. Отдельную версию под Android.
Парой кликов ставятся кросс-компиляторы (например под win или cpu RISC-V), позволяя вам сразу проекты компилить для нескольких ОС.
Пересборка интерфейса IDE делается мышкой из меню внутри Лазаря: "Сервис - Параметры сборки Lazarus, выбрать Библиотеку LCL". Просто из списка выбираете qt5,gtk2/3,MUI - "Собрать". Ошибки выдаст в лог, если что. Под тёмную тему Qt нужен ещё xml-набор по раскраске, где-то в вики есть список готовых, рекомендую "Breeze Dark" (см.скриншот).
Все что нужно сделать предварительно:
1. Установить пакеты git и make для работы самой fpcUpDeluxe.
2. Установить libGtk2-dev и libGtk3-dev с их зависимостями (pango, cairo, pixbuff), для сборки LCL Лазаря. (названия пакетов ± от дистра)
3. Для Qt в ROSA уже всё было, когда я последний раз ставил, но естественно devel пакеты нужны для компиляции программ с Qt виджетами.
Если каких-то пакетов будет не хватать, увидите в подробном логе fpcUpDeluxe.
4. Дебагер gdb по желанию.
В расширенных настройках установки fpcUpDeluxe можно сразу выбрать установить help (по F1 чтоб справку видеть), пакеты "единого окна" и "групп проектов".
И потом доустановить "Сетевой диспетчер пакетов - OPM". Или конкретный пакет, если уже знаете под что сборка.
Это реально удобно. Главное немного привыкнуть к странному интерфейсу.
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Raskaton, А нет ссылки на исходники lazarus 3.2.2, а то откуда качаю там только 3.2.0.
Я все-таки предпочитаю ручками и с нужным окружением?
Я все-таки предпочитаю ручками и с нужным окружением?
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
В видео увидел как в fpcUpDeluxe кроскомпиляторы устанавливать. До этого вообще не знал о таком. Теперь в пару кликов можно хоть под винду, хоть под aarch64 программы компилировать. Это плюс. В полне возможно это и руками можно сделать, это ещё надо уметь
lazarus 3.0
Я о том что версии lazarus 3.2.2 не удается найти, а в 3.2.0 та-же байда с меню я выше писал...
lazarus 3.0
Необходимое зло. У меня основная версия Lazarus весит 5.8Гб — это под десктоп с кросс-компиляторами:
Но если не ставить в каждую установку IDE всё подряд, а разделять немного по направлениям разработки, то можно и выиграть в сумме.
С другой стороны какой-нибудь Android SDK ещё похлеще места занимает.
По версии мой косяк, она всё таки называется Lazarus 3.2, а исправления идут сверху как fix без смены версии.
Нужно выбрать git-ветку "fixes_3_2a" (её пока нет в последней версии fpcUpDeluxe), но можно руками как-то так:
Код: Выделить всё
git clone --single-branch -b fixes_3_2a https://gitlab.com/freepascal.org/lazarus/lazarus.git
Возможно, проект попробовать полностью пересобрать через меню: "Запуск - Очистить и собрать". Вдруг проблема не в новой версии, а в старых бинарниках. Я сам тройку ещё не пробовал. Пишут там новый Online Pakage Manager, а я как раз думаю в него компоненту сделать.
Сам fpcUpDeluxe также ставит из исходников. Он просто скриптами качает всё и собирает с подробным логом.
Качает как и положено, Lazarus с: https://gitlab.com/freepascal.org/lazarus/lazarus
компилятор fpc с: https://gitlab.com/freepascal.org/fpc/source
Только готовые кросс-компиляторы, как я понимаю, берёт с разных репов пользователей.
В теории всё просто, нужно в конфигах правильно пути исправить, чтобы брался нужный компилятор из нужной папки, и все пути до пакетов тоже. Я один раз залез в эту кучу ключей компиляции в конфиге — там жуть жуткая, в wiki сидеть неделю чтобы раскурить.
fpcUpDeluxe один раз папку указал и всё. Сам все конфиги без ошибок залезет и поправит. И кросс-компилятор готовый скачает, поставит. И удалит также непринуждённо, когда будет не нужен. Я вот щас darwin/MacOS снесу — он разово нужен был.
Удобно из Лазаря сразу под все системы компилировать: один раз настроить и только галки ставь.
lazarus 3.0
Oberon, да, не помогает. Протестировал у себя. Получилось как в анекдоте. У меня не то что "нет меню", у меня их целых ДВА!
Многие пользуют "dockedformeditor" пакет, который форму делает не в отдельном окне, а в вкладке с кодом.
С таким плагином меню ошибочно дублируется. Верхнее неактивное — баг, а нижнее — функциональное, нажимаемое как положено.
IDE собрана под Qt5.
Пересобрал IDE под Gtk2 и меню стало одно, но неактивное багованное. Хотя пункты в него добавляются. И по высоте оно какое-то не такое.
Попробовал удалить плагин dockedformeditor, пересобрал.
Qt5 - меню нет;
Gtk2 - меню есть и работает как надо (при нажатии показывает вложенные).
Получается, в режиме "по умолчанию" с Gtk2 всё работает. Спрашивал у виндоводов сказали, что в Windows меню работает, но какие-то другие косяки были и они сидят на 2.2.6.
Многие пользуют "dockedformeditor" пакет, который форму делает не в отдельном окне, а в вкладке с кодом.
С таким плагином меню ошибочно дублируется. Верхнее неактивное — баг, а нижнее — функциональное, нажимаемое как положено.
IDE собрана под Qt5.
Пересобрал IDE под Gtk2 и меню стало одно, но неактивное багованное. Хотя пункты в него добавляются. И по высоте оно какое-то не такое.
Qt5 - меню нет;
Gtk2 - меню есть и работает как надо (при нажатии показывает вложенные).
-
- Сообщения: 280
- Зарегистрирован: 18 янв 2020, 20:54
lazarus 3.0
Raskaton, Я поступил следующим образом:
Скачал последний Lazarus 3.2, распаковал и собрал "чистый" Gtk2 (make clean bigide).
Меню работает, а для сборки проекта с Qt5 в настройках самого проекта меняю тип библиотеки виджетов на qt5
(Проект - Настройки проекта - Параметры компилятора - Дополнения и перекрытия - вкладка "Присвоить LCLWidgetType").
Не знаю костыль это или нет (скорее всего нет), но работает. Таким образом дизайн я разрабатываю в Gtk2, а после
запуска (компиляции) внешний вид в Qt5.
Скачал последний Lazarus 3.2, распаковал и собрал "чистый" Gtk2 (make clean bigide).
Меню работает, а для сборки проекта с Qt5 в настройках самого проекта меняю тип библиотеки виджетов на qt5
(Проект - Настройки проекта - Параметры компилятора - Дополнения и перекрытия - вкладка "Присвоить LCLWidgetType").
Не знаю костыль это или нет (скорее всего нет), но работает. Таким образом дизайн я разрабатываю в Gtk2, а после
запуска (компиляции) внешний вид в Qt5.
- Вложения
-
- 1.png (9.03 КБ) 13446 просмотров
-
- 2.png (9.25 КБ) 13446 просмотров
lazarus 3.0
ДонВенчензо, да, похоже, баг только в режиме дизайна.
Терпеть можно, тем более сейчас не модно такое меню. Я всё пытаюсь вспомнить где я видел компоненту для меню в Linux-стиле: Пытался такое соорудить из стандартного TListView, но не получается нормально.
Если кто встречал — скажите название, пожалуйста. В каком-то наборе она мне попадалась, но склероз...
Oberon, у меня так и настроенно. Я собираю сразу под Gtk2, Qt5 и Win32.
Главное настроить, чтобы имя "экзешника" было разное:
На выходе получатся сразу несколько исполнимых файлов (или один выбранного режима) вида:
Но для двух режимов сборки под винду я убираю указание LCLWidgetType, чтобы не смущал "win32", всё равно ".exe" добавляется к имени автоматически:
И постоянно пользуюсь меню "Запуск — компилировать в нескольких режимах..." (постом выше был скрин)
Кстати сборка под MacOS(cocoa) не получалась из ROSA Fresh. Под мак требуется более свежая версия GLibC 2.38, а в ROSA — 2.33
Возможно, поможет специальная опция при установке из fpUpDeluxe, кнопка "Setup+" на главной. Опция:
"Force linking against lowest @GLIBC-version."
Сам не пробовал, и что именно она добавляет в конфиг компилятора без понятия, т.к. в итоге скомпилили на самом Маке.
Терпеть можно, тем более сейчас не модно такое меню. Я всё пытаюсь вспомнить где я видел компоненту для меню в Linux-стиле: Пытался такое соорудить из стандартного TListView, но не получается нормально.
Если кто встречал — скажите название, пожалуйста. В каком-то наборе она мне попадалась, но склероз...
Oberon, у меня так и настроенно. Я собираю сразу под Gtk2, Qt5 и Win32.
Главное настроить, чтобы имя "экзешника" было разное:
-
Код: Выделить всё
$(ProjOutDir)\MyProject-x86_64-gtk2
$(ProjOutDir)\MyProject-x86_64-qt5
$(ProjOutDir)\MyProject-x86_64-win32.exe
$(ProjOutDir)\MyProject-i386-win32.exe
$(ProjOutDir)\MyProject-x86_64-cocoa
Код: Выделить всё
$NameOnly($(ProjFile))-$(TargetCPU)-$(LCLWidgetType)
Код: Выделить всё
$NameOnly($(ProjFile))-$(TargetCPU)
Код: Выделить всё
MyProject-x86_64.exe
MyProject-i386.exe
Кстати сборка под MacOS(cocoa) не получалась из ROSA Fresh. Под мак требуется более свежая версия GLibC 2.38, а в ROSA — 2.33
Возможно, поможет специальная опция при установке из fpUpDeluxe, кнопка "Setup+" на главной. Опция:
"Force linking against lowest @GLIBC-version."
Сам не пробовал, и что именно она добавляет в конфиг компилятора без понятия, т.к. в итоге скомпилили на самом Маке.