по первой проблеме. Попробуй отключить Range Check на OSX и посомтри заработает ли.
По побоводу отладчика, убедись что он был установлен правильно а так же был тобой подписан . Вики
Lazarus Mac OS
Модератор: Модераторы
vfiuchcikicshuusrch писал(а):отладчик подписан, в вики про какойто fink написано. его я не ставил.. это критично ?
Нет. Критично подписать gdb, иначе система не даст ему отладочных прав.
Из fink-а имеет смысл пробовать, если gdb, который есть не работает. Т.к. в fink-е может быть свежая версия.
vfiuchcikicshuusrch писал(а):подскажете как Range Check отключить ?
только не прописывать в каждом файле проекта директиву.
файлов около сотни..
Попробуй Project -> Project Options -> Compiler Options > Debugging , снять галочку с Range (-Cr)
Ещё вопросы:
1) комплируется/запускается ли пустой проект (одно окно)
2) если ответ на вопрос 1 это "да", то какие нестандартные компоненты используются в портируером проекте?
vfiuchcikicshuusrch писал(а):пустой проект запускается, окно работает и кнопки на нём, ну и всё как обычно
компоненты есть самописные, они успешно скомпилировались и установились в лазарус с его пересборкой. проблем не заметил.
смею догадываться, что проблема возникает при чтении внешнего файла настроек или ресурсов
(ибо на Макоси это немного подругому, чем в Винде и Линуксе)
Т.к. отладчика нет, рекомендую отлаживаться логами.
Например добавить WriteLn-ы в FormCreate и FormShow и смотреть кто из них вызывается.
Например добавить WriteLn-ы в FormCreate и FormShow и смотреть кто из них вызывается.
Еще вариант - обернуть код проекта из lpr-файла в try...except и получить текст ошибки, например, через ShowMessage или writeln
Код: Выделить всё
uses
Dialogs;
...
try
Application.CreateForm(TForm1, Form1);
...
Application.Run;
except
on E: Exception
do begin
ShowMessage (E.Message);
end;
end;vfiuchcikicshuusrch писал(а):комментировал и оставлял только begin showmessage('1') end.
и нифига не работало .... очень странно вобщем.
проблема в одной из секций иниациализации?
