如何强制 `qmake` 在 `project.pbxproj` 中包含 `ProvisioningStyle` $ `DevelopmentTeam` 字段?

Posted

技术标签:

【中文标题】如何强制 `qmake` 在 `project.pbxproj` 中包含 `ProvisioningStyle` $ `DevelopmentTeam` 字段?【英文标题】:How can enforce `qmake` to contain `ProvisioningStyle` $ `DevelopmentTeam` fields in `project.pbxproj`? 【发布时间】:2017-07-13 21:30:28 【问题描述】:

我正在使用Qmake 命令行为ios 构建我的应用程序,并且我正在努力用xcodebuild 签署我的应用程序,因为qmake 生成的MyApp.xcodeproj/project.pbxproj 不包含以下字段全部

ProvisioningStyle
DevelopmentTeam

如何强制qmakeproject.pbxproj 中包含ProvisioningStyle $ DevelopmentTeam 字段?

我不需要在 2 个字段中设置任何特定值。只需要在project.pbxproj 中的适当位置出现这些字段。在Xcode UI IDE 中打开和MyApp.xcodeproj,只需选中-取消选中Project>General settings 下的Automatically manage signing 选项即可将字段添加到project.pbxproj。如何让qmake 为我添加它们?

【问题讨论】:

【参考方案1】:

如你所知,我在这个 SO 线程上回答了 DevelopmentTeam 的详细信息: Qt for iOS: code signing is required

您评论说您为PROVISISIONING_STYLE 尝试了相同的模式,但您是否尝试过ProvisioningStyle?我只是有点不清楚你做了什么以及结果是什么。

【讨论】:

是的。我试过ProvisioningStyle。但是,问题在于它最终出现在 project.pbxprojbuildSettings = 部分。而它应该在project.pbxprojattributes = 部分。只有当它在attributes = 部分时,Xcode 才能正确拾取它。 请检查由Xcode 生成的project.pbxproj 以正确理解我的评论。在这种情况下,qmake 似乎没有遵守Xcodeproject.pbxproj 定义的格式。有什么方法可以从qmake 级别强制执行自动选择provisioning profile 吗?我正在使用 Xcode 8 不幸的是,我没有在我的 Mac 上工作,而且我在其他问题上深陷困境。我们想知道的是如何应用 QMAKE_MAC_XCODE_SETTINGS。这应该为我们指明正确的方向。你能从 Qt 发布你的编译输出吗?我们将看到它在构建过程中的位置。 (即让我们在其中搜索 DEVELOPMENT_TEAM 变量/值等) 我期待看到一些 XCode 命令行工具发挥作用。 我仍然建议弄清楚 qmake xcode 变量的作用。我猜 Qt 使用了更清洁的解决方案(希望如此!)

以上是关于如何强制 `qmake` 在 `project.pbxproj` 中包含 `ProvisioningStyle` $ `DevelopmentTeam` 字段?的主要内容,如果未能解决你的问题,请参考以下文章

如何防止在 make clean 上运行 qmake?

如何在 qmake 中删除更改默认 CFLAGS?

如何在 qmake 项目中向 moc 添加特定标志?

如何在qmake中指定repc的输出路径?

如何在qmake中设置libs顺序?

Qt:如何告诉 Qmake 在 Visual Studio 项目中包含 ws2_32