Как вы изучаете Lazarus?
От: Khimik  
Дата: 17.09.22 16:24
Оценка:
Мне надо портировать мою программу с Delphi на Lazarus, и это весьма сложная задача, я уже столкнулся с подводными камнями и проблемами, ответы на которые толком не гуглятся, также я задаю вопросы на форумах и не всегда мне дают ответ. Купил книгу "Основы программирования в среде Lazarus" Мансурова, начал читать, и по моему там нет ничего из того что мне нужно. Как вы находите для себя информацию про программированию в Lazarus?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re: Как вы изучаете Lazarus?
От: rudzuk  
Дата: 17.09.22 19:59
Оценка: 2 (1)
Здравствуйте, Khimik, Вы писали:

K> Мне надо портировать мою программу с Delphi на Lazarus, и это весьма сложная задача, я уже столкнулся с подводными камнями и проблемами, ответы на которые толком не гуглятся, также я задаю вопросы на форумах и не всегда мне дают ответ. Купил книгу "Основы программирования в среде Lazarus" Мансурова, начал читать, и по моему там нет ничего из того что мне нужно. Как вы находите для себя информацию про программированию в Lazarus?


У лазаря хорошая вики и открытый код. Это все.
avalon/3.0.1
Re: Как вы изучаете Lazarus?
От: gyraboo  
Дата: 17.09.22 20:07
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Мне надо портировать мою программу с Delphi на Lazarus, и это весьма сложная задача, я уже столкнулся с подводными камнями и проблемами, ответы на которые толком не гуглятся, также я задаю вопросы на форумах и не всегда мне дают ответ. Купил книгу "Основы программирования в среде Lazarus" Мансурова, начал читать, и по моему там нет ничего из того что мне нужно. Как вы находите для себя информацию про программированию в Lazarus?


А твои проблемы с портированием лежат именно в плоскости Лазаруса, или в плоскости Free Pascal и его библиотек?
Re: Как вы изучаете Lazarus?
От: BlackEric http://black-eric.lj.ru
Дата: 17.09.22 20:38
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Мне надо портировать мою программу с Delphi на Lazarus, и это весьма сложная задача, я уже столкнулся с подводными камнями и проблемами, ответы на которые толком не гуглятся, также я задаю вопросы на форумах и не всегда мне дают ответ. Купил книгу "Основы программирования в среде Lazarus" Мансурова, начал читать, и по моему там нет ничего из того что мне нужно. Как вы находите для себя информацию про программированию в Lazarus?


Google, просмотр сорцов и чтение документации. Ну и опыт какой-никакой.

Вы все еще не перевели проект? В чем у вас затык?
https://github.com/BlackEric001
Re[2]: Как вы изучаете Lazarus?
От: Khimik  
Дата: 18.09.22 06:34
Оценка:
Здравствуйте, BlackEric, Вы писали:

BE>Google, просмотр сорцов и чтение документации. Ну и опыт какой-никакой.


Каких сорцов и какой документации?

BE>Вы все еще не перевели проект? В чем у вас затык?


У меня например такая проблема: возникает странная ошибка circular unit reference на модулях, входящих в VCL. Я обнаружил что она пропадает, если все модули проекта перенести в один каталог. Но мне хочется держать модули в разных каталогах, т.к. у меня есть библиотеки для разных проектов, ещё компоненты, для них нужны отдельные каталоги.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[2]: Как вы изучаете Lazarus?
От: Osaka  
Дата: 18.09.22 21:00
Оценка:
R>У лазаря
>открытый код. Это все.
Его реально запустить из-под отладчика, чтобы показал call stack на ошибке
>circular unit reference на модулях, входящих в VCL
?
Re[3]: Как вы изучаете Lazarus?
От: rudzuk  
Дата: 19.09.22 08:32
Оценка:
Здравствуйте, Osaka, Вы писали:

O> R>У лазаря

O> >открытый код. Это все.

O> Его реально запустить из-под отладчика, чтобы показал call stack на ошибке


В смысле код FCL/LCL? Вполне

O> >circular unit reference на модулях, входящих в VCL


O> ?


Ему ранее уже предлагали код показать, но это, видимо, не очень интересно. Интереснее всякую дурь в непрофильных топиках на кывте обсуждать.
avalon/3.0.1
Re[3]: Как вы изучаете Lazarus?
От: Alex.Che  
Дата: 19.09.22 09:08
Оценка: :))
Здравствуйте, Khimik, Вы писали:

BE>>Вы все еще не перевели проект? В чем у вас затык?


K>У меня например такая проблема: возникает странная ошибка circular unit reference на модулях, входящих в VCL. Я обнаружил что она пропадает, если все модули проекта перенести в один каталог. Но мне хочется держать модули в разных каталогах, т.к. у меня есть библиотеки для разных проектов, ещё компоненты, для них нужны отдельные каталоги.


имхо, тут программист нужен. ©
Re[3]: Как вы изучаете Lazarus?
От: BlackEric http://black-eric.lj.ru
Дата: 19.09.22 09:45
Оценка:
Здравствуйте, Khimik, Вы писали:

K>Здравствуйте, BlackEric, Вы писали:


BE>>Google, просмотр сорцов и чтение документации. Ну и опыт какой-никакой.


K>Каких сорцов и какой документации?


По нему даже книга есть, хоть и устарела: Free Pascal и Lazarus: Учебник по программированию

BE>>Вы все еще не перевели проект? В чем у вас затык?


K>У меня например такая проблема: возникает странная ошибка circular unit reference на модулях, входящих в VCL. Я обнаружил что она пропадает, если все модули проекта перенести в один каталог. Но мне хочется держать модули в разных каталогах, т.к. у меня есть библиотеки для разных проектов, ещё компоненты, для них нужны отдельные каталоги.


Если после Рождества будет актуально, то напишите в личку. Возможно возьмусь за перевод. До НГ загрузка 100%.
https://github.com/BlackEric001
Re[4]: Как вы изучаете Lazarus?
От: Khimik  
Дата: 19.09.22 11:43
Оценка: :)
Здравствуйте, rudzuk, Вы писали:

O>> >circular unit reference на модулях, входящих в VCL


O>> ?


R>Ему ранее уже предлагали код показать, но это, видимо, не очень интересно. Интереснее всякую дурь в непрофильных топиках на кывте обсуждать.


Я же не могу показать весь свой код. А когда я убрал эту ошибку в своём коде (переместил uses Forms из inteface в implementation), возникла ещё более странная ошибка:

dialogs.pp(10,66) Fatal: Circular unit reference between Dialogs and Forms

Dialogs и Forms — это не мой код, а VCL. Похоже на баг в Lazarus.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[5]: Как вы изучаете Lazarus?
От: rudzuk  
Дата: 19.09.22 12:47
Оценка: +1
Здравствуйте, Khimik, Вы писали:

K> R>Ему ранее уже предлагали код показать, но это, видимо, не очень интересно. Интереснее всякую дурь в непрофильных топиках на кывте обсуждать.


K> Я же не могу показать весь свой код.


Можно было попытаться воспроизвести проблему на другом проекте. Можно было начать новый проект и постепенно подключать к нему свои модули. Блин, за пять месяцев можно было найти массу вариантов...
avalon/3.0.1
Re[6]: Как вы изучаете Lazarus?
От: Khimik  
Дата: 19.09.22 17:18
Оценка:
Здравствуйте, rudzuk, Вы писали:

K>> R>Ему ранее уже предлагали код показать, но это, видимо, не очень интересно. Интереснее всякую дурь в непрофильных топиках на кывте обсуждать.


K>> Я же не могу показать весь свой код.


R>Можно было попытаться воспроизвести проблему на другом проекте. Можно было начать новый проект и постепенно подключать к нему свои модули. Блин, за пять месяцев можно было найти массу вариантов...


Мне казалось, я могу найти программиста, который за деньги на пальцах мне всё разжуёт, так что не придётся тратить на это нервную энергию. А так приходится копаться самостоятельно.
Я создал проект helloword, который использует один модуль из моей библиотеки, и автопортировал его на Lazarus. Он не запускался, всё та же ошибка. Потом я понял, что если убрать из каталога с модулями (моя библиотека) все модули кроме этого который используется, то проект компилируется. Копирую в каталог модули обратно — снова не компилируется. Я очень не понимаю саму эту идеологию — такое ощущение что Lazarus компилирует все модули, прописанные в Проект/Параметры компилятора/Пути/Другие модули. Зачем он это делает, если эти модули в конкретном проекте не используются?
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[7]: Как вы изучаете Lazarus?
От: rudzuk  
Дата: 19.09.22 17:45
Оценка:
Здравствуйте, Khimik, Вы писали:

K> R>Можно было попытаться воспроизвести проблему на другом проекте. Можно было начать новый проект и постепенно подключать к нему свои модули. Блин, за пять месяцев можно было найти массу вариантов...


K> Мне казалось, я могу найти программиста, который за деньги на пальцах мне всё разжуёт, так что не придётся тратить на это нервную энергию.


Тебе, помнится, человек помощь предлагал, чего ты с ним не связался?

K> Я создал проект helloword, который использует один модуль из моей библиотеки, и автопортировал его на Lazarus. Он не запускался, всё та же ошибка.


Сделал бы руками, без автопортирования.

K> Я очень не понимаю саму эту идеологию — такое ощущение что Lazarus компилирует все модули, прописанные в Проект/Параметры компилятора/Пути/Другие модули.


Он этого не делает.
avalon/3.0.1
Re[8]: Как вы изучаете Lazarus?
От: Khimik  
Дата: 19.09.22 18:27
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Тебе, помнится, человек помощь предлагал, чего ты с ним не связался?


Он куда-то пропал.

K>> Я очень не понимаю саму эту идеологию — такое ощущение что Lazarus компилирует все модули, прописанные в Проект/Параметры компилятора/Пути/Другие модули.


R>Он этого не делает.


Вы серьёзно? Я проверил ещё раз: нажимаю F9 или Ctrl-F9 — всё нормально. Перехожу в Far, копирую один модуль в каталог библиотеки, возвращаюсь в Lazarus, нажимаю Ctrl+F9, появляется вкладка с этим модулем и сообщение об ошибке, что не хватает другого модуля, который используется в этом скопированном модуле. Иду в Far, удаляю этот модуль, в Lazarus закрываю его вкладку и нажимаю Ctrl+F9 — снова всё ок.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[9]: Как вы изучаете Lazarus?
От: rudzuk  
Дата: 19.09.22 18:45
Оценка:
Здравствуйте, Khimik, Вы писали:

K> R>Тебе, помнится, человек помощь предлагал, чего ты с ним не связался?


K> Он куда-то пропал.


ЛюциферНоворос, ты куда пропадал?

K> K>> Я очень не понимаю саму эту идеологию — такое ощущение что Lazarus компилирует все модули, прописанные в Проект/Параметры компилятора/Пути/Другие модули.


K> R>Он этого не делает.


K> Вы серьёзно? Я проверил ещё раз: нажимаю F9 или Ctrl-F9 — всё нормально. Перехожу в Far, копирую один модуль в каталог библиотеки, возвращаюсь в Lazarus, нажимаю Ctrl+F9, появляется вкладка с этим модулем и сообщение об ошибке, что не хватает другого модуля, который используется в этом скопированном модуле. Иду в Far, удаляю этот модуль, в Lazarus закрываю его вкладку и нажимаю Ctrl+F9 — снова всё ок.


Такое может быть только в том случае, если новый модуль имеет конфликт имени с уже используемым модулем.
avalon/3.0.1
Re[10]: Как вы изучаете Lazarus?
От: Khimik  
Дата: 20.09.22 05:06
Оценка:
Здравствуйте, rudzuk, Вы писали:

K>> Вы серьёзно? Я проверил ещё раз: нажимаю F9 или Ctrl-F9 — всё нормально. Перехожу в Far, копирую один модуль в каталог библиотеки, возвращаюсь в Lazarus, нажимаю Ctrl+F9, появляется вкладка с этим модулем и сообщение об ошибке, что не хватает другого модуля, который используется в этом скопированном модуле. Иду в Far, удаляю этот модуль, в Lazarus закрываю его вкладку и нажимаю Ctrl+F9 — снова всё ок.


R>Такое может быть только в том случае, если новый модуль имеет конфликт имени с уже используемым модулем.


Проверил ещё раз. Создаю проект helloworld — он компилируется. Добавляю через Проект/Параметры компилятора/Пути/Другие модули каталог с моей библиотекой, и при компиляции всплывает ошибка, при этом открывается вкладка с одним из модулей в этом каталоге. Видимо там компилируются все модули из этого каталога.
"Ты должен сделать добро из зла, потому что его больше не из чего сделать". АБ Стругацкие.
Re[11]: Как вы изучаете Lazarus?
От: rudzuk  
Дата: 20.09.22 07:17
Оценка:
Здравствуйте, Khimik, Вы писали:

K> R>Такое может быть только в том случае, если новый модуль имеет конфликт имени с уже используемым модулем.


K> Проверил ещё раз. Создаю проект helloworld — он компилируется. Добавляю через Проект/Параметры компилятора/Пути/Другие модули каталог с моей библиотекой, и при компиляции всплывает ошибка, при этом открывается вкладка с одним из модулей в этом каталоге. Видимо там компилируются все модули из этого каталога.


Как модуль называется?
avalon/3.0.1
Re: Как вы изучаете Lazarus?
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 20.09.22 07:20
Оценка: 1 (1)
Здравствуйте, Khimik, Вы писали:

Никак не изучаем. Lazarus — не нужен


K>Мне надо портировать мою программу с Delphi на Lazarus, и это весьма сложная задача


Ты не настоящий программист, если для тебя это сложная задача
Маньяк Робокряк колесит по городу
Re: Как вы изучаете Lazarus?
От: magnum2005  
Дата: 20.09.22 07:28
Оценка: -1
Здравствуйте, Khimik, Вы писали:

K>Мне надо портировать мою программу с Delphi на Lazarus, и это весьма сложная задача, я уже столкнулся с подводными камнями и проблемами, ответы на которые толком не гуглятся, также я задаю вопросы на форумах и не всегда мне дают ответ.



А недаром говорят умные люди: не связывайтесь с фреймворками, у которых комьюнити — 3 с половиной человека. Любая технология прежде всего сильна своим комьюнити, где можно спросить, уточнить, узнать ценные сведения.
Re[2]: Как вы изучаете Lazarus?
От: rudzuk  
Дата: 20.09.22 07:42
Оценка:
Здравствуйте, magnum2005, Вы писали:

m> А недаром говорят умные люди: не связывайтесь с фреймворками, у которых комьюнити — 3 с половиной человека. Любая технология прежде всего сильна своим комьюнити, где можно спросить, уточнить, узнать ценные сведения.


У лазаря с этим все в порядке.
avalon/3.0.1
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.