Lazarus on Linux

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

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

Re: Lazarus on Linux

Сообщение zoltanleo » 21.02.2022 19:12:52

Vadim писал(а):И, если честно, не понимаю, в чём цимус кросскомпиляции

Цимес как раз в том, что на одной оси можно одним махом собрать бинарники под другие, не устанавливая целевые платформы.

Но я, например, предпочитаю твой способ - собираю нативно на линуксе и макоси в виртуалке
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 458
Зарегистрирован: 17.10.2013 10:55:01

Re: Lazarus on Linux

Сообщение Vadim » 22.02.2022 18:25:17

zoltanleo писал(а):Цимес как раз в том, что на одной оси можно одним махом собрать бинарники под другие, не устанавливая целевые платформы.

Я это понимаю, но только чисто теоретически. :) Потому что сроду ни разу не был человеком большого ума и брыжющей во все стороны гениальности. После компиляции мне надо посмотреть, как программа работает. Даже живописуя простенькую программу я умудряюсь навалять там кучу ошибок (не синтаксических, разумеется, которые быстро выявит компилятор ;-) ). И поэтому кросскомпиляция мне ничего не даёт...
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Lazarus on Linux

Сообщение zoltanleo » 22.02.2022 18:34:19

Vadim писал(а):
zoltanleo писал(а):Цимес как раз в том, что на одной оси можно одним махом собрать бинарники под другие, не устанавливая целевые платформы.

Я это понимаю, но только чисто теоретически. :) Потому что сроду ни разу не был человеком большого ума и брыжющей во все стороны гениальности. После компиляции мне надо посмотреть, как программа работает. Даже живописуя простенькую программу я умудряюсь навалять там кучу ошибок (не синтаксических, разумеется, которые быстро выявит компилятор ;-) ). И поэтому кросскомпиляция мне ничего не даёт...

Не надо юродствовать, все вокруг неглупые люди.

Про какие ошибки ты говоришь, я не знаю. Но плюсы кросскомпиляции в том, что ты можешь проверить исполняемый файл без развертывания среды на этой оси.

Опять же, повторюсь, я сам придерживаюсь того, что бинарник лучше собирать в родной среде, отладка оптимальнее
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 458
Зарегистрирован: 17.10.2013 10:55:01

Re: Lazarus on Linux

Сообщение Seenkao » 22.02.2022 19:29:25

Vadim, множество проектов уже достаточно отлажены и надо быстро собрать под все используемые системы. Гораздо проще собрать всё в одном месте и после проверять (отмечу ещё раз, проекты были отлажены до этого :idea: ) каждую реализацию на своей системе, с проверкой именно того, что добавляли. А вполне возможно и без проверок. Просто соединив несколько проектов вместе.

Разработчику зачастую не нужны лишние проблемы. Потому на кросс-компиляторы меньше всего грешить приходится. За реализацию отвечает сам разработчик.

Сам я стараюсь всегда проверять и отлаживать работоспособность программы на каждой системе отдельно.
Seenkao
энтузиаст
 
Сообщения: 503
Зарегистрирован: 01.04.2020 03:37:12

Re: Lazarus on Linux

Сообщение Alex2013 » 22.02.2022 22:19:01

Я из за увлечения ВиАр с Линукса года четыре как соскочил. :idea:
Но до этого ставил Лазарус на Убунту и прочие дистрибутивы без малейших проблем .
Неужели ли за четыре года все настолько поменялось ? :shock:
Alex2013
долгожитель
 
Сообщения: 2965
Зарегистрирован: 03.04.2013 11:59:44

Re: Lazarus on Linux

Сообщение Сквозняк » 28.02.2022 16:53:39

Для винды из линукса лазарусные программы хорошо собираются в wine такими же командами, как и консольные, только больше зависимостей нужно указать и лазарусные модули нужно раньше прописать, потому что есть со схожими именами. Для такой сборки кроссплатформенная версия лазаруса не нужна, установленной в wine достаточно, нужно только один раз скопипастить из проекта в виндовом лазарусе опции командной строки и после можно работать с ними напрямую, без запуска самого лазаруса. Но если в проекте применяются компоненты, которые не собраны в лазарусе по умолчанию, то всё сложнее, потому их использования следует избегать.
Сквозняк
энтузиаст
 
Сообщения: 1110
Зарегистрирован: 29.06.2006 22:08:32

Re: Lazarus on Linux

Сообщение Kopa » 02.03.2022 12:07:55

Без каких то проблем устанавливал из пакетов FPC/Lazarus при использовании LiveCD Linux Puppy (Tahr, Xeial, Bioic ...)
а также собирал их из исходников штатным GCC из devx.sfc (соответствующего дистрибутива Puppy)

P.S. Интересно, что сборка каких то и Си проектов в таком варианте проходит с разной успешностью в разных дистрибутивах Puppy.
В лучшей степени под уже "вышедшей" из использования Tahr. но далее эти сборки софта можно запускать и в следующих версиях. Из интересно популярного софта собирал Wine 6.0.2,
а так беру уже готовые сборки Wine от Slackware в формате txz.
https://sourceforge.net/projects/wine/f ... 0Packages/
от неё же (ScPup32) и сборки разных браузеров
(пока так ещё и не использую 64-бит дистрибутивы на постоянной основе)

P.S. Можно ли считать использование LiveCD Linux чистой системой, если даже она не установлена на HDD,
а работает после начальной загрузки с внешнего USB-SSD через Grub.
Kopa
новенький
 
Сообщения: 41
Зарегистрирован: 29.10.2020 12:24:36

Re: Lazarus on Linux

Сообщение Vadim » 02.03.2022 18:36:30

Kopa писал(а):Можно ли считать использование LiveCD Linux чистой системой...

Как минимум, нужно иметь чёткие и однозначные критерии чистоты и с ними сравнивать... ;-)
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Lazarus on Linux

Сообщение RRYTY » 02.03.2022 22:30:55

После долгих попыток кросскмпиляции остановился на варианте с виртуальными машинами. Т.е., пишу и отлаживаю под Linux, там же компилирую под Linux. Потом компилирую в WinXP для 32-битных систем, там же тесты. В Win7 x64 для 64-битных, там же тесты.
Wine нельзя использовать ни для отладки, ни для тестов, это абсолютно синтетическая среда. В реальном Windows океан отличий начиная с драйверов и заканчивая API.
RRYTY
постоялец
 
Сообщения: 187
Зарегистрирован: 25.12.2021 10:00:32

Re: Lazarus on Linux

Сообщение Seenkao » 03.03.2022 00:07:01

RRYTY писал(а):Wine нельзя использовать ни для отладки, ни для тестов, это абсолютно синтетическая среда. В реальном Windows океан отличий начиная с драйверов и заканчивая API.

На самом деле это зависит от настроек Wine в котором запущен Lazarus. Для каждой программы могут быть свои настройки.
А настраивать Wine на общее использование достаточно сложно. Там ломаются зависимости друг об друга. Этим надо владеть, чтоб настроить достаточно неплохо его.
И получается что мы можем использовать несколько конфигураций Wine на одном компьютере вообще с разными настройками, не совместимыми между собой. (реализация Windows 95 - Windows 98 - Windows 7 - Windows 10 - четыре разных Wine).
Seenkao
энтузиаст
 
Сообщения: 503
Зарегистрирован: 01.04.2020 03:37:12

Re: Lazarus on Linux

Сообщение DedFrend » 03.03.2022 09:13:04

я удивлен, какое бурное обсуждение вызвал мой довольно безобидный вопрос. И отписываюсь, что было дальше.
У меня действительно был неработоспособен fpc. На fpc -uvt он сообщал о том, что не найдены директории и ничего не компилировал.
В общем я решил снова переставлять . Для этого сделал #apt purge lazarus* , #apt purge fpc* . Потом вручную постарался потереть все папки с названиями lazarus и fpc в /etc /var /usr /home .
Потом поставил fpc и fpc-src и проверил его работоспособность. Заработал. После этого накатил lazarus и тот установился без проблем. При пересборке он создал свою папку в /home и записался туда.
Правда, теперь возникли проблемы с IBX , но это будет другая тема.
Но, во-первых, мне все меньше нравится система линуховых пакетов. В винде проблем с установками поменьше будет. И несмотря на всю автоматизацию никакие purge не гарантируют. что в системе не осталось каких-то хвостов, которые в будущем вызовут проблемы.
Кроме того, у меня уже довольно много документации по Лазарю, но нигде не описано, как он, собственно, функционирует? Где определены всякие $(PkgOutDir) , в чем их смысл? Что можно изменить, а что рискованно?
DedFrend
постоялец
 
Сообщения: 156
Зарегистрирован: 25.11.2018 12:21:50

Re: Lazarus on Linux

Сообщение wavebvg » 03.03.2022 11:55:33

DedFrend писал(а):... мне все меньше нравится система линуховых пакетов...

Так проблема была не в пакетах, а в том, что у Вас образовалась каша в $HOME или настройках. Это особенность fpc и в винде тоже можно все попортить. В принципе, имелась возможность повозиться и с помощью samplecfg заставить всё работать, но так делают, чтобы сохранить старые настройки путей до либ под старые системы, особенно при кросскопиляции. Тут поступили проще.
DedFrend писал(а):Кроме того, у меня уже довольно много документации по Лазарю, но нигде не описано, как он, собственно, функционирует? Где определены всякие $(PkgOutDir) , в чем их смысл? Что можно изменить, а что рискованно?

Если честно, то документации по Лазарю я не видел в глаза, а то, что есть -- это учебники для начинающих, чтобы они не пугались множества диалогов и смогли делать свои "Привет миры" "правильно".
Хороший учебник -- это, в первую очередь, научный труд, в котором не показываются, где какие опции, а рассказывается, как и где их находить, почему там и как они работают на различных уровнях.
wavebvg
постоялец
 
Сообщения: 354
Зарегистрирован: 28.02.2008 04:57:35

Re: Lazarus on Linux

Сообщение zub » 03.03.2022 12:49:36

>>Где определены всякие $(PkgOutDir)
https://wiki.freepascal.org/IDE_Macros_ ... _filenames
конкретно этот в lazarus/packager/packagesystem.pas
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: Lazarus on Linux

Сообщение zoltanleo » 08.03.2022 01:06:47

wavebvg писал(а):Хороший учебник -- это, в первую очередь, научный труд, в котором не показываются, где какие опции, а рассказывается, как и где их находить, почему там и как они работают на различных уровнях

ты не поверишь, но самая полноценная документация здесь

https://www.blaisepascalmagazine.eu/pro ... ory/books/

но стоит она 40-100 европейских рублей :D
Аватара пользователя
zoltanleo
постоялец
 
Сообщения: 458
Зарегистрирован: 17.10.2013 10:55:01

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Google Adsense [Bot] и гости: 16

Рейтинг@Mail.ru