powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi. Linux. Баги.
25 сообщений из 76, страница 1 из 4
Delphi. Linux. Баги.
    #39966783
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто-нибудь может предложть способ временно обойти проблему описанную здесь:
https://quality.embarcadero.com/browse/RSP-29358

Как бы критично становится.

На всякий, если у кого нет доступа:

Program crash on exit after library load/unload on Linux

Runtime error 231 at 00007F974BE78B8A

Both library and main program use package RTL

libbug1.7z
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966820
ziv-2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Rusov,
Где-то валятся Exceptions. ErrorCode = 231 - Too many nested exceptions
Смотри в отладчике.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966828
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изначально ошибка Segmentation fault где-то в System, при финализации модулей.
Исходники посмотреть сейчас не могу - поставил community edition
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966831
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Rusov
Исходники посмотреть сейчас не могу - поставил community edition

Так CE с исходниками.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966848
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю. У меня - без.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966852
ziv-2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kazantsev Alexey
Maxim Rusov
Исходники посмотреть сейчас не могу - поставил community edition

Так CE с исходниками.

В CE нет линукса.
Не понятно, как автор компилирует тогда.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966856
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот Linux как раз есть. SDK ставишь и все.

По теме есть что сказать?

Upd.
Возможно, у меня не СE. Пробная версия на 30 дней, это не CE? Ну и х.с.н.
Та же байда была на 10.3. Поставил 10.4 в надежде что что-то изменилось. Фиг.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966871
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Rusov
Возможно, у меня не СE. Пробная версия на 30 дней, это не CE? Ну и х.с.н.

Пробная версия это триал. В триале действительно нет исходников, но в триале 10.4 они есть, как есть и линукс. В CE линукса нет.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966893
asutp2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Rusov,

а для чего вообще использовать runtime packages, особенно в linux? чем аргументируется?
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39966898
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asutp2
а для чего вообще использовать runtime packages, особенно в linux? чем аргументируется?


1. Возможность обрабатывать исключения из библиотек.
2. Возможность использовать общие переменные процесса.
3. Общий менеджер памяти.
4. Существенное сокращение размеров.

Из всего - 1 самый стоппер, естественно. 2-4 - можно обойти так или иначе.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967023
jack_vosmerkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
этот глюк исправлять не будут
о причинах можешь неспрашивать

в лазарусе проверял?
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967043
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А в Лазарусе уже есть пакеты?
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967044
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jack_vosmerkin
о причинах можешь неспрашивать

А очень хочется :)

jack_vosmerkin
в лазарусе проверял?

Там пакетов пока нет:
Dynamic Packages

Year: 2020
Status: In progress
Tags: Dynamic libraries packages

Implement support for libraries and dynamic package loading (The equivalent of Delphi BPL) in the Free Pascal RTL.
This is currently being worked on by Sven Barth, a member of the Free Pascal core team.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967045
Kazantsev Alexey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Rusov,

1. Если интересует только сам факт исключения, то можно исользовать safecall.
2. Переменные можно экспортировать, но импорт придётся делать руками.
3. У дельфей на позиксе он и так общесистемный.
4. ...
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967068
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
N-е количество лет назад, когда в Delphi еще не было 64-х разрядного компилятора а в Лазарусе уже был мы были вынуждены портировать бэкенд на Лазарус. Было тяжело, я долго подкручивал его RTL чтобы сделать единый стек исключений. Потом EB разродилась и я все это с облегчением выкинул. Заново затеваться не хочется.

Странно как то. Я обрадовался что в Линукс есть почти настоящие packages. Т.е. работа (довольно большая) проделана. Только пользоваться ими - нельзя.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967098
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Rusov,

вот здесь (ахтунг, по-немецки) пишут такие вещи:

1) 231 ist "Zu viele verschachtelte Exceptions, Maximal 16 sind zulässig".
перевод: 231 - это "Слишком много вложенных исключений, максимум 16 допустимо"

2) другой советует поступить таким образом

- взять шестнадцатиричный код из исключения, в вашем случае это 00007F974BE78B8A
- и поискать в MAP-файле на "7F974BE78B8A"

и якобы при известном везении можно получить имя класса / метода, где возникло исключение.

но и он же пишет про большое число вложенных исключений
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967109
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я, наверное, зря написал про Runtime error 231, это уже последствия. Просто в консоли остаются только они (их тысячи), а изначальная ошибка улетает

Полностью все выглядит так

$ ./Main >log 2>&1

Begin...
LibProc1
End...
Exception EAccessViolation in module bplrtl270.so at 00007F042017AFE8.
Access violation at address 00007F042017AFE8, accessing address 00007F04214E9898.
Runtime error 231 at 00007F0420179B8A
Runtime error 231 at 00007F0420179B8A
Runtime error 231 at 00007F0420179B8A
... 20 тыс раз


Изначально ошибка Segmentation fault где-то в System, при финализации модулей.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967184
Фотография Кроик Семён
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вначале было подумал, когда увидел EAccessViolation, что вы string в либу передаете или возвращаете, но взглянул на код либы и понял, что нет.
После просмотра такая мысль появилась: а вот этот Writeln из либы он куда пишет? Может там в линуксе надо счто то типа дескриптора потока передавать? Попробуйте интереса ради заменить Writeln на Sleep
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967197
Сергей Фролов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Максим, перестаньте насиловать Delphi.
Все новые платформы и компиляторы там чисто для маркетинговых целей.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967200
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Фролов
Максим, перестаньте насиловать Delphi.
Все новые платформы и компиляторы там чисто для маркетинговых целей.

У нас сервисы из под CentOS написанные на delphi в ПЭ нормально крутятся видимо с помощью магии.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967204
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По существу, в какой последней версии это работало ?
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967207
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей Фролов
Максим, перестаньте насиловать Delphi.
Все новые платформы и компиляторы там чисто для маркетинговых целей.

Не, я пока не готов признать поражение :)
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967208
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry Arefiev
По существу, в какой последней версии это работало ?

Если вопрос ко мне по Subj - то это работает в Windows. В Linux - падает. Проверено на 10.3 и 10.4 может никогда и не работало (когда там Linux появился?...)
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967210
asutp2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня на Ubuntu 18.04 LTS работает демон (без рантайм пакетов), обрабатывает входящие json-запросы и отвечает json-ответами. В качестве БД используется MySQL (через UniDAC). Написано на rio 10.3.3, uptime 6 месяцев после последнего обновления.
Всё работает, exception-ы нормально обрабатываются и ничего не крешится.

Runtime-packages это самое голимое зло, т.к. использующий код привязан к конкретной сборке этих самых пакетов. Вышел новый фикс к системным либам делфи и вуаля, требуется перекомпиляция/полный апгрейд основного приложения + пакетов к нему. А если в системе есть какое нибудь другое приложение, которое тоже использует эти же самые runtime packages, то всё, приехали. Либо его тоже придется обновлять, либо отказаться от обновления и жить на старых пакетах.
...
Рейтинг: 0 / 0
Delphi. Linux. Баги.
    #39967212
Фотография Maxim Rusov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asutp2,

Я, разумеется, не использую стандартные packages. Собираю свой, включая в него только то что мне нужно (rtl + Classes). Для меня это такая же библиотека как и все остальные, но с "фичами".

Ну и размер - имеет значение. Сейчас у меня суммарный размер всех бинарников ~70M. Без package было бы под 200.
...
Рейтинг: 0 / 0
25 сообщений из 76, страница 1 из 4
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi. Linux. Баги.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]