MAC版打包步骤

MAC版打包步骤
假设Skydimo.app包编译路径为

/Users/mac/QtProjects/SkyDimo/build-Skydimo-Desktop_Qt_5_15_2_clang_64bit-MinSizeRel/build

使用dylibbundler修复程序中除QT以外的第三方库, 如果没有dylibbundler, 使用brew安装, 注意使用x86架构的brew而不是arm架构, 如何在arm架构机器上安装x86架构的brew请访问互联网。修复过程中可能需要是输入libLibSkydimo.dylib所在目录。

dylibbundler -od -b -ns -x ./Skydimo.app/Contents/MacOS/Skydimo -d ./Skydimo.app/Contents/libs

修复之后可以使用命令检查依赖库路径是否正确

mac@192 build % otool -L ./test.app/Contents/MacOS/test
mac@192 build % otool -L ./test.app/Contents/libs/libLibtest.dylib

使用QT提供的macdeployqt安装QT框架至程序包, 注意要用程序编译时所用的qt附带的macdeployqt工具, 可能需要cd进入qt安装目录, 然后显式指定./macdeployqt而不是macdeployqt

cd /Users/mac/Qt/5.15.2/clang_64/bin
mac@192 bin % ./macdeployqt /Users/mac/QtProjects/test/build-test-Desktop_Qt_5_15_2_clang_64bit-MinSizeRel/build/test.app

检查二进制文件RPATH表

otool -l ./test.app/Contents/MacOS/test | grep RPATH -A2
添加QT框架目录到二进制文件RPATH表

install_name_tool -add_rpath @executable_path/../Frameworks ./test.app/Contents/MacOS/teste

MAC版签名与公正
使用APPLE开发者账户登录并进入网址下载证书, 然后安装到本地计算机上

https://developer.apple.com/account/resources/certificates/download/

生成公证配置,每台电脑仅需要运行一次

xcrun notarytool store-credentials “testApp” --apple-id “tonyepaper@163.com” --team-id “M73XRGZ894” --password “wvaj-cmmn-dgol-akdk”
为应用程序进行签名(不是程序包)

codesign -f -o runtime --timestamp -s "Developer ID Application: Shenzhen Guangyuzhou Technology Co., Ltd. (M73XRGZ894)" -v ./test.app/Contents/MacOS/test

为依赖库进行签名

codesign -f --timestamp -s "Developer ID Application: Shenzhen Guangyuzhou Technology Co., Ltd. (M73XRGZ894)" -v ./test.app/Contents/libs/*.dylib

使用磁盘工具将app打包为dmg

磁盘工具》 基于文件夹建立DMG印象
将dmg包上传至APPLE进行公证, 这个需要一点时间

xcrun notarytool submit ./test.dmg --keychain-profile "testApp" --wait

如果出现错误, 使用命令查询错误原因并修复, 其中id部分为上一个命令提供

xcrun notarytool log "5c6915b2-1eb3-4a33-b03d-0722c6b8b747" --keychain-profile "testApp"


将 Node.js 应用打包成可执行的应用程序,可以使用 Electron 框架。下面是将 Node.js 应用打包成可执行的应用程序的大致步骤: 1. 安装 Electron ```bash npm install electron --save-dev ``` 2. 创建主进程 创建一个名为 `main.js` 的文件作为主进程。在该文件中,使用 `electron` 模块启动应用程序,并加载应用程序的入口文件。这个入口文件就是你的 Node.js 应用程序。 ```JavaScript const { app, BrowserWindow } = require('electron') function createWindow () { // 创建浏览器窗口 const win = new BrowserWindow({ width: 800, height: 600, webPreferences: { nodeIntegration: true } }) // 加载应用程序的入口文件 win.loadFile('path/to/your/nodejs/app/index.html') } // 当 Electron 完成初始化并准备创建浏览器窗口时调用此方法 app.whenReady().then(createWindow) ``` 3. 创建应用程序图标 在应用程序中添加一个图标,可以让你的应用程序看起来更专业。在 Windows 上,可以使用 `rcedit` 工具添加应用程序图标。在 macOS 上,可以在应用程序的资源文件夹中添加一个 `icns` 文件。 4. 打包应用程序 使用 `electron-builder` 模块将应用程序打包成可执行文件。这个模块可以将应用程序打包成 Windows、macOS 和 Linux 上的可执行文件。 ```bash npm install electron-builder --save-dev ``` 在 `package.json` 文件中添加以下配置: ```JSON { "name": "your-app", "version": "1.0.0", "main": "main.js", "scripts": { "start": "electron .", "pack": "electron-builder --dir", "dist": "electron-builder" }, "build": { "appId": "com.your-company.your-app", "productName": "Your App Name", "win": { "icon": "path/to/your/icon.ico" }, "mac": { "icon": "path/to/your/icon.icns" }, "linux": { "icon": "path/to/your/icon.png" } } } ``` 现在可以使用以下命令打包应用程序: ```bash npm run dist ``` 这将在 `dist` 文件夹中生成可执行文件。 以上是将 Node.js 应用打包成可执行的应用程序的大致步骤。具体实现可能会因为应用程序的不同而有所不同。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值