Skip to content

构建选项

构建选项用于配置项目的编译和打包参数,通过 设置 > 构建选项(快捷键 Ctrl+F9 / macOS Cmd+F9)打开。

构建选项分为两个标签页:基础配置(编译设置)和打包配置(安装包设置)。

基础配置

目标平台

选择需要编译的目标操作系统,可多选:

平台说明默认值
windows编译 Windows 可执行文件开启
macOS编译 macOS 可执行文件开启
linux编译 Linux 可执行文件开启

目标架构

选择需要编译的 CPU 架构,可多选:

架构说明默认值平台限制
amd6464 位 x86 架构开启
38632 位 x86 架构开启macOS 不支持
arm6464 位 ARM 架构开启Windows 不支持
arm32 位 ARM 架构开启Windows 和 macOS 不支持
loong64龙芯 64 位架构关闭(暂不可用)暂不支持

UI 框架

选择各平台使用的 UI 渲染框架:

框架说明默认值备注
✱Win32Windows 原生 UI 框架开启(固定)Windows 平台必须启用
✱CocoamacOS 原生 UI 框架开启(固定)macOS 平台必须启用
GTK2Linux GTK2 UI 框架开启适用于 LCL 原生渲染
GTK3Linux GTK3 UI 框架视项目而定适用于 LCL + WebView/CEF 混合渲染

输出设置

配置项说明输入类型默认值
输出目录编译输出文件的存放目录文本输入 + 目录选择器./build
可执行文件名称编译生成的可执行文件名文本输入项目名称

编译模式

编译模式为单选,二选一:

模式说明默认值
调试模式 (Debug)保留调试信息,不优化,适合开发调试默认选中
发布模式 (Release)去除调试信息(-s -w),启用优化(-trimpath),Windows 下隐藏控制台窗口(-H windowsgui-

CGO 设置

配置项说明输入类型默认值
已启用 CGO / 已关闭 CGO是否启用 CGO(C 语言调用接口)复选框启用
构建其它平台关闭 CGO 后,可交叉编译其它平台的可执行文件复选框(CGO 启用时禁用)关闭

说明:

  • 启用 CGO 时只能编译当前平台的可执行文件
  • 关闭 CGO 后可交叉编译 Windows、Linux、macOS 的可执行文件
  • 使用 energy build --all 命令时会自动禁用 CGO

构建参数

配置项说明输入类型默认值
构建参数传递给 go build 的额外参数文本输入

参数格式示例:

-tags prod -ldflags "-X main.version=1.0"

支持的参数类型:

  • -tags - 构建标签(如 proddev
  • -ldflags - 链接器标志(如 -s -w

反编译保护(开发中)

配置项说明默认值状态
代码混淆对编译后的二进制进行代码混淆关闭暂不可用
禁止调试防止对应用程序进行调试关闭暂不可用

打包配置

打包配置用于设置安装包的生成参数。详见 打包发布

各平台输出文件格式

平台输出文件格式特殊处理
Windowsbuild/<name>.exeRelease 模式自动添加 -H windowsgui
macOSbuild/<name>.app自动创建 .app 包结构
Linuxbuild/<name>Release 模式自动执行 strip

跨平台构建

使用 energy build --all 或关闭 CGO 并勾选"构建其它平台"时,会依次构建以下平台组合:

目标平台目标架构
Windowsamd64, 386
macOSamd64, arm64
Linuxamd64, 386, arm, arm64

跨平台构建的输出文件名自动追加平台和架构后缀,如 myapp_windows_amd64.exe

GO
ENERGY