我一直在搜索Lazarus IDE文档,但到目前为止只发现了与交叉编译相关的信息,所以我希望有人能给我一个直接的答案。我目前正在开发一个需要编译32位Windows和64位Windows的项目。另外,我已经设置了Free Pascal编译器的两个版本。 Lazarus是否具有用于在两个编译器中进行配置的任何内置功能,然后使用适当的编译器基于构建目标?理想情况下,这将在全局级别完成,以便配置在项目中保持不变,但如果只能在项目级别完成,我不介意这样做。
答案 0 :(得分:5)
在进一步阅读时,我想我找到了答案。我没有意识到,但fpc具有与gcc相同的前端功能。话虽如此,实现我的问题中描述的功能只是将编译器安装为交叉编译器,而不是作为独立的编译器。由于看起来您不能使用x86_64编译器来创建32位版本,因此您必须编译32位版本,然后交叉编译64位版本。在我的例子中,我首先使用:
编译和安装Win32编译器 make all install INSTALL_PREFIX=C:\path\to\lazarus\1.0.8\fpc\2.6.3 OS_TARGET=win32 CPU_TARGET=i686 PP=ppc386.exe
接下来,我编译并交叉安装 64位编译器:
make crossall crossinstall INSTALL_PREFIX=C:\path\to\lazarus\1.0.8\fpc\2.6.3 OS_TARGET=win64 CPU_TARGET=x86_64
要确认它是否有效,您可以在ppcrossx64
文件夹中找到名为C:\path\to\lazarus\1.0.8\fpc\2.6.3\bin\i386-win32
的可执行文件。