|
|
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Кто-нибудь может предложть способ временно обойти проблему описанную здесь: 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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.06.2020, 21:12 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Maxim Rusov, Где-то валятся Exceptions. ErrorCode = 231 - Too many nested exceptions Смотри в отладчике. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 11:20 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Изначально ошибка Segmentation fault где-то в System, при финализации модулей. Исходники посмотреть сейчас не могу - поставил community edition ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 12:26 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Maxim Rusov Исходники посмотреть сейчас не могу - поставил community edition Так CE с исходниками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 12:47 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Не знаю. У меня - без. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 13:35 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Kazantsev Alexey Maxim Rusov Исходники посмотреть сейчас не могу - поставил community edition Так CE с исходниками. В CE нет линукса. Не понятно, как автор компилирует тогда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 14:07 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Вот Linux как раз есть. SDK ставишь и все. По теме есть что сказать? Upd. Возможно, у меня не СE. Пробная версия на 30 дней, это не CE? Ну и х.с.н. Та же байда была на 10.3. Поставил 10.4 в надежде что что-то изменилось. Фиг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 14:11 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Maxim Rusov Возможно, у меня не СE. Пробная версия на 30 дней, это не CE? Ну и х.с.н. Пробная версия это триал. В триале действительно нет исходников, но в триале 10.4 они есть, как есть и линукс. В CE линукса нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 15:23 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Maxim Rusov, а для чего вообще использовать runtime packages, особенно в linux? чем аргументируется? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 17:48 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
asutp2 а для чего вообще использовать runtime packages, особенно в linux? чем аргументируется? 1. Возможность обрабатывать исключения из библиотек. 2. Возможность использовать общие переменные процесса. 3. Общий менеджер памяти. 4. Существенное сокращение размеров. Из всего - 1 самый стоппер, естественно. 2-4 - можно обойти так или иначе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.06.2020, 18:02 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
этот глюк исправлять не будут о причинах можешь неспрашивать в лазарусе проверял? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 12:31 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
А в Лазарусе уже есть пакеты? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 13:03 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 13:05 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Maxim Rusov, 1. Если интересует только сам факт исключения, то можно исользовать safecall. 2. Переменные можно экспортировать, но импорт придётся делать руками. 3. У дельфей на позиксе он и так общесистемный. 4. ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 13:07 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
N-е количество лет назад, когда в Delphi еще не было 64-х разрядного компилятора а в Лазарусе уже был мы были вынуждены портировать бэкенд на Лазарус. Было тяжело, я долго подкручивал его RTL чтобы сделать единый стек исключений. Потом EB разродилась и я все это с облегчением выкинул. Заново затеваться не хочется. Странно как то. Я обрадовался что в Линукс есть почти настоящие packages. Т.е. работа (довольно большая) проделана. Только пользоваться ими - нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 13:46 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Maxim Rusov, вот здесь (ахтунг, по-немецки) пишут такие вещи: 1) 231 ist "Zu viele verschachtelte Exceptions, Maximal 16 sind zulässig". перевод: 231 - это "Слишком много вложенных исключений, максимум 16 допустимо" 2) другой советует поступить таким образом - взять шестнадцатиричный код из исключения, в вашем случае это 00007F974BE78B8A - и поискать в MAP-файле на "7F974BE78B8A" и якобы при известном везении можно получить имя класса / метода, где возникло исключение. но и он же пишет про большое число вложенных исключений ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 14:47 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Я, наверное, зря написал про 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, при финализации модулей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 15:35 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Я вначале было подумал, когда увидел EAccessViolation, что вы string в либу передаете или возвращаете, но взглянул на код либы и понял, что нет. После просмотра такая мысль появилась: а вот этот Writeln из либы он куда пишет? Может там в линуксе надо счто то типа дескриптора потока передавать? Попробуйте интереса ради заменить Writeln на Sleep ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 20:53 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Максим, перестаньте насиловать Delphi. Все новые платформы и компиляторы там чисто для маркетинговых целей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 23:00 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Сергей Фролов Максим, перестаньте насиловать Delphi. Все новые платформы и компиляторы там чисто для маркетинговых целей. У нас сервисы из под CentOS написанные на delphi в ПЭ нормально крутятся видимо с помощью магии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 23:11 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
По существу, в какой последней версии это работало ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 23:26 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Сергей Фролов Максим, перестаньте насиловать Delphi. Все новые платформы и компиляторы там чисто для маркетинговых целей. Не, я пока не готов признать поражение :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 23:46 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
Dmitry Arefiev По существу, в какой последней версии это работало ? Если вопрос ко мне по Subj - то это работает в Windows. В Linux - падает. Проверено на 10.3 и 10.4 может никогда и не работало (когда там Linux появился?...) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 23:50 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
У меня на Ubuntu 18.04 LTS работает демон (без рантайм пакетов), обрабатывает входящие json-запросы и отвечает json-ответами. В качестве БД используется MySQL (через UniDAC). Написано на rio 10.3.3, uptime 6 месяцев после последнего обновления. Всё работает, exception-ы нормально обрабатываются и ничего не крешится. Runtime-packages это самое голимое зло, т.к. использующий код привязан к конкретной сборке этих самых пакетов. Вышел новый фикс к системным либам делфи и вуаля, требуется перекомпиляция/полный апгрейд основного приложения + пакетов к нему. А если в системе есть какое нибудь другое приложение, которое тоже использует эти же самые runtime packages, то всё, приехали. Либо его тоже придется обновлять, либо отказаться от обновления и жить на старых пакетах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.06.2020, 23:53 |
|
||
|
Delphi. Linux. Баги.
|
|||
|---|---|---|---|
|
#18+
asutp2, Я, разумеется, не использую стандартные packages. Собираю свой, включая в него только то что мне нужно (rtl + Classes). Для меня это такая же библиотека как и все остальные, но с "фичами". Ну и размер - имеет значение. Сейчас у меня суммарный размер всех бинарников ~70M. Без package было бы под 200. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.06.2020, 00:36 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39967109&tid=2038237]: |
0ms |
get settings: |
5ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
23ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 296ms |

| 0 / 0 |
