Qt for iOS:需要代码签名

Qt for iOS: code signing is required

本文关键字:代码 for iOS Qt      更新时间:2023-10-16

我的MaC上安装了yes smite版本,Xcode版本也是6.1。我从官方网站下载了Qt,并尝试构建一个非常简单的程序。但是,它给了我 3 条错误消息

:-1: 错误:未找到代码签名标识:未找到与团队 ID "(null)"匹配的有效签名标识(即证书和私钥对)。

-1:错误:SDK "iOS 8.1"中的产品类型"应用程序"需要代码签名

-1:错误:Xcodebuild 失败。

我在网上搜索了可能的解决方案,但找不到任何解决方案。 我应该怎么做才能在Qt上构建我的应用程序?

将此添加到项目的 qmake 文件中:

setting.name = DEVELOPMENT_TEAM
setting.value = XXXXXXXXXXXXXX
QMAKE_MAC_XCODE_SETTINGS += setting

将 X 替换为团队的实际值。请注意,该值不是团队名称 - 它是其他标识符。若要获取该值(在 XCode 中下载预配配置文件后),请执行以下操作:

  • 从 XCode (项目常规选项卡)中手动设置 XCode 项目中的代码签名团队。
  • 查看项目文件的"包内容"
  • 在原始文本编辑器中打开文件 project.pbxproj。
  • 搜索DEVELOPMENT_TEAM。

将此添加到项目的 qmake 文件中:

ios: {
    QMAKE_DEVELOPMENT_TEAM = ABCDEF0123
    QMAKE_PROVISIONING_PROFILE = 12345678-abcd-1234-abcd-12345678abcd
}

若要获取这些设置,请阅读预配配置文件中的~/Library/MobileDevice/Provisioning Profile,具体而言,请参阅以下部分:

<dict>
    <!-- ... -->
    <key>TeamIdentifier</key>
    <array>
            <string>ABCDEF0123</string>
    </array>
    <!-- ... -->
    <key>UUID</key>
    <string>12345678-abcd-1234-abcd-12345678abcd</string>
    <!-- ... -->
</dict>

参考:

  • http://doc.qt.io/qt-5/qmake-variable-reference.html