秋·风

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::
使用fpc.exe命令行的方法可以批量编译lazarus程序,满足特定需求(我用在跨平台多CPU批量编译,非常省时及省心)。
项目名称:project.lpr
编译的程序名称:project1.exe
OS:win64
CPU:x86_64
D:\QF\fpc\bin\x86_64-win64\fpc.exe
-MObjFPC
-Scghi
-O1
-g
-gl
-WG
-l
-vewnhibq
-Filib\x86_64-win64
-FuD:\QF\projects\
-FuD:\QF\lazarus\lcl\units\x86_64-win64\win32
-FuD:\QF\lazarus\lcl\units\x86_64-win64
-FuD:\QF\lazarus\components\freetype\lib\x86_64-win64
-FuD:\QF\lazarus\components\lazutils\lib\x86_64-win64
-FuD:\QF\lazarus\packager\units\x86_64-win64
-FUlib\x86_64-win64
-FE.
-o"project1.exe"
-dLCL
-dLCLwin32
project1.lpr

 

 D:\QF\fpc\bin\x86_64-win64\fpc.exe -MObjFPC -Scghi -O1 -g -gl -WG -l -vewnhibq -Filib\x86_64-win64 -FuD:\QF\projects\ -FuD:\QF\lazarus\lcl\units\x86_64-win64\win32 -FuD:\QF\lazarus\lcl\units\x86_64-win64 -FuD:\QF\lazarus\components\freetype\lib\x86_64-win64 -FuD:\QF\lazarus\components\lazutils\lib\x86_64-win64 -FuD:\QF\lazarus\packager\units\x86_64-win64 -FUlib\x86_64-win64 -FE. -o"project1.exe" -dLCL -dLCLwin32 project1.lpr

交叉编译:
cpu:x86_64
OS:linux
使用gtk2

D:\QF\fpc\bin\x86_64-win64\fpc.exe
-Tlinux
-Px86_64
-MObjFPC
-Scghi
-Cg
-O1
-g
-gl
-l
-vewnhibq
-Filib\x86_64-linux
-FuD:\QF\projects\
-FuD:\QF\lazarus\lcl\units\x86_64-linux\gtk2
-FuD:\QF\lazarus\lcl\units\x86_64-linux
-FuD:\QF\lazarus\components\freetype\lib\x86_64-linux
-FuD:\QF\lazarus\components\lazutils\lib\x86_64-linux
-FuD:\QF\lazarus\packager\units\x86_64-linux
-FUlib\x86_64-linux
-FE.
-oproject1
-dLCL
-dLCLgtk2
project1.lpr

 

D:\QF\fpc\bin\x86_64-win64\fpc.exe -Tlinux -Px86_64 -MObjFPC -Scghi -Cg -O1 -g -gl -l -vewnhibq -Filib\x86_64-linux -FuD:\QF\projects\ -FuD:\QF\lazarus\lcl\units\x86_64-linux\gtk2 -FuD:\QF\lazarus\lcl\units\x86_64-linux -FuD:\QF\lazarus\components\freetype\lib\x86_64-linux -FuD:\QF\lazarus\components\lazutils\lib\x86_64-linux -FuD:\QF\lazarus\packager\units\x86_64-linux -FUlib\x86_64-linux -FE. -oproject1 -dLCL -dLCLgtk2 project1.lpr

 以上命令行可以在lazarus的项目选项获得:

QQ_1763786352967

QQ_1763786373273

批量编译aarch64-linux、x86_64-linux、x86_64-win64示例:
将以下3行保存为bat文件放到project的目录,双击这个文件就可以编译出名为project1-aarch64-linux、project1-x86_64-linux和project1-x86_64-win64.exe 3个执行文件

D:\QF\fpc\bin\x86_64-win64\fpc.exe -Tlinux -Paarch64 -MObjFPC -Scghi -Cg -O1 -g -gl -l -vewnhibq -Filib\Paarch64-linux -FuD:\QF\projects\ -FuD:\QF\lazarus\lcl\units\Paarch64-linux\gtk2 -FuD:\QF\lazarus\lcl\units\Paarch64-linux -FuD:\QF\lazarus\components\freetype\lib\Paarch64-linux -FuD:\QF\lazarus\components\lazutils\lib\Paarch64-linux -FuD:\QF\lazarus\packager\units\x86_64-linux -FUlib\Paarch64-linux -FE. -oproject1-aarch64-linux -dLCL -dLCLgtk2 project1.lpr
D:\QF\fpc\bin\x86_64-win64\fpc.exe -Tlinux -Px86_64 -MObjFPC -Scghi -Cg -O1 -g -gl -l -vewnhibq -Filib\x86_64-linux -FuD:\QF\projects\ -FuD:\QF\lazarus\lcl\units\x86_64-linux\gtk2 -FuD:\QF\lazarus\lcl\units\x86_64-linux -FuD:\QF\lazarus\components\freetype\lib\x86_64-linux -FuD:\QF\lazarus\components\lazutils\lib\x86_64-linux -FuD:\QF\lazarus\packager\units\x86_64-linux -FUlib\x86_64-linux -FE. -oproject1-x86_64-linux -dLCL -dLCLgtk2 project1.lpr
D:\QF\fpc\bin\x86_64-win64\fpc.exe -MObjFPC -Scghi -O1 -g -gl -WG -l -vewnhibq -Filib\x86_64-win64 -FuD:\QF\projects\ -FuD:\QF\lazarus\lcl\units\x86_64-win64\win32 -FuD:\QF\lazarus\lcl\units\x86_64-win64 -FuD:\QF\lazarus\components\freetype\lib\x86_64-win64 -FuD:\QF\lazarus\components\lazutils\lib\x86_64-win64 -FuD:\QF\lazarus\packager\units\x86_64-win64 -FUlib\x86_64-win64 -FE. -o"project1-x86_64-win64.exe" -dLCL -dLCLwin32 project1.lpr

 

posted on 2025-11-22 11:45  秋·风  阅读(54)  评论(0)    收藏  举报