本篇文章主要以BS RDC打包为蓝本书写,其他app打包原理相同。
执行 cargo build --release
首先安装 -> rust
然后安装 -> inno
将项目中main.rs 顶部 // #![windows_subsystem = "windows"]
注释去掉,此操作是让程序以非命令行方式调用,然后执行 cargo build --release
然后将sciter.dll 和 bs.exe 放在同一个文件夹中
打开下载安装的inno软件 如果弹出提示框则选择create a new empty script file
app(文件夹)
|-- Contents(文件夹)
|-- Frameworks(文件夹)
|-- libsciter.dylib (库文件)
|-- Info.plist (资源描述文件)
|-- MacOS(文件夹)
|-- bs (主程序)
|-- Resources(文件夹)
|-- icon.icns (图标)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleExecutable</key>
<string>bs</string> 可执行文件对应MacOS目录下的文件,记得替换
<key>CFBundleIconFile</key>
<string>icon.icns</string> 图标文件对应resource目录下的,记得替换
<key>CFBundleIdentifier</key>
<string>com.echosocket.bs</string> 官网记得替换
<key>NSHighResolutionCapable</key> 启动高分辨率支持
<true/>
<key>LSUIElement</key> 是否代理模式
<false/>
</dict>
</plist>
然后把app添加一个后缀名称.app这样一个mac app就创建成功了
封装为dmg
原创文章,转载请注明出处!