Несмотря на указанную возможность в среде Lazarus компилировать для нескольких платформ, из коробки эта фича не работает.
Выбор платформы, для которой будет компилироваться приложение делается в меню Project->Project Options->Compiler Options->Code Generation->Target platform
Здесь указывается:
Существует возможность сделать несколько билд-модов (Project Options->Build Modes), в которых сохранить конфигурации под разные системы.
В таком случае кнопка выбора билда появится на панели кнопок, рядом с кнопкой запуска приложения.
К сожалению, нельзя сохранять эти моды между проектами, они привязываются только к текущему.
Но если бы можно было просто выбрать целевую операционку и спокойно перекомпилировать приложение под неё - эта заметка бы не появилась.
Установленный Lazarus может собрать приложение только под ту операционку, для которой он был скачан. Так, скачав версию для x64 вы не сможете собитать x86-приложения.
Нехватает некоторых файлов (пример для x86):
поставили lazarus x86, скопировали из него файлы в lazarus x64, удалили x86 версию.
После этого можно без ошибок выбирать x86-версию для компиляции и радоваться жизни.
Выбор платформы, для которой будет компилироваться приложение делается в меню Project->Project Options->Compiler Options->Code Generation->Target platform
Здесь указывается:
- Target OS - целевая операционная система, для Windows актуальны Win32 и Win64
- Target CPU family - тип используемых команд процессора. Обычно это i386 или x86_64
- Target processor - выбор поколения процессора. На сегодня не актуально - почти всегда можно оставлять default
Существует возможность сделать несколько билд-модов (Project Options->Build Modes), в которых сохранить конфигурации под разные системы.
В таком случае кнопка выбора билда появится на панели кнопок, рядом с кнопкой запуска приложения.
К сожалению, нельзя сохранять эти моды между проектами, они привязываются только к текущему.
Но если бы можно было просто выбрать целевую операционку и спокойно перекомпилировать приложение под неё - эта заметка бы не появилась.
Установленный Lazarus может собрать приложение только под ту операционку, для которой он был скачан. Так, скачав версию для x64 вы не сможете собитать x86-приложения.
Нехватает некоторых файлов (пример для x86):
- lazarus32\lcl\units\i386-win32 (копируем всю папку в lazarus64\lcl\units\)
- lazarus32\fpc\2.x.x\units\i386-win32 (копируем всю папку в lazarus64\fpc\2.x.x\units\)
- lazarus32\fpc\2.x.x\bin\i386-win32\ppc386.exe (копируем 1 файл в lazarus64\fpc\2.x.x\bin\x86_64-win64)
поставили lazarus x86, скопировали из него файлы в lazarus x64, удалили x86 версию.
После этого можно без ошибок выбирать x86-версию для компиляции и радоваться жизни.
Спасибо!
ОтветитьУдалитьДобавьте ещё один пункт в инструкцию:
ОтветитьУдалитьlazarus32\mingw\i386-win32 (копируем всю папку в lazarus64\mingw\), иначе не будет работать Отладчик и нельзя будет ставить точки останова.
спасибо огромное)
ОтветитьУдалитьСпасибо)
ОтветитьУдалить