2

我手中有一个 C++ 库,需要以 .dylib 的形式编译用于 iOS。我使用了iOS-cmake,该工具构建了一个库并创建了 Xcode 解决方案,我可以在目标部分找到该库。

所以我打开 Xcode 解决方案,选择目标并点击Build导致错误:

Signing for "my_library" requires a development team. Select a development team in the Signing & Capabilities editor.

这里的问题是 Xcode 中的库目标没有签名选项。目标配置仅包含以下选项卡:

在此处输入图像描述

所以我的问题是 - 如何解决这个问题?我可以使用 签署库目标Run Script吗?

请告诉我如何处理这项任务。先感谢您!

4

1 回答 1

0

有多种方法可以解决这个问题。

  1. 每次使用 iOS-cmake 使用 codesign 命令通过提供适当的签名身份构建库后,您都可以手动对库进行签名。这涉及大量的手工工作,所以我希望你使用方法 2
  2. 您可以通过添加以下命令使用运行脚本自动签署所有包含的库 codesign -f -s "$EXPANDED_CODE_SIGN_IDENTITY" "$BUILT_PRODUCTS_DIR/$FRAMEWORKS_FOLDER_PATH/<library_name>" 这里签名身份可以是“$EXPANDED_CODE_SIGN_IDENTITY”或“$CODE_SIGN_IDENTITY” ,这取决于您是否使用 cocoapods 的工作空间结构

第二种方法的想法是,xcode (xcodebuild) 在构建项目时提供的环境变量很少,因此我们尝试利用用于签署应用程序的相同签名身份来签署库

于 2021-07-12T03:24:50.223 回答