Header 在 Xcode 中找不到文件 7
Header file not found in Xcode 7
我正在创建一个嵌入一些 C 库的框架。 C 库代码使用 .modulemap
文件公开给 Swift。在目标的 Build Settings
中,在 Swift Compiler - Search Paths
部分下,我将路径设置为 Import Paths
行中的 .modulemap
文件。同样在 Search Paths
部分下,分别在 Library Search Paths
和 Header Search Paths
行中设置了库和 headers 的路径。将框架添加到应用程序的项目并尝试构建应用程序后,它失败并出现错误 pjsip.h file not found
.
Header Search Paths
的值:
- headers 个文件夹的结构
导入过程从突出显示的蓝色文件 pjsua.h
开始,然后导入其他 headers,那些用红色矩形标记的文件。
- 在
pjsua.h
中导入headers的完整列表
您可以看到导入的 headers 与成功导入的 pjsua.h
不在同一个文件夹中,但这不是 Header Search Paths
的工作来查找headers ?我不想弄乱 headers 文件夹的结构,因为它是第三方库,每次必须完成 'magic' 时都会更新它。包含路径在 Other C Flags
行中定义,与设置 Header Search Paths
相同。我不确定我错过了什么。
注:
- Headers路径正确。
- 它们不包含任何空格。
P.S This 没用。
更新:
此错误仅在为模拟器构建时显示,为真实设备构建时 Xcode 失败并出现多个错误 Redefinition of ...
解决方案简单但丑陋。也为主项目设置 Header Search Paths
和 Search Paths
。这绝对不是向项目添加框架的最佳方式,因为它公开了有关框架的详细信息,但这是解决问题的唯一方法。
我正在创建一个嵌入一些 C 库的框架。 C 库代码使用 .modulemap
文件公开给 Swift。在目标的 Build Settings
中,在 Swift Compiler - Search Paths
部分下,我将路径设置为 Import Paths
行中的 .modulemap
文件。同样在 Search Paths
部分下,分别在 Library Search Paths
和 Header Search Paths
行中设置了库和 headers 的路径。将框架添加到应用程序的项目并尝试构建应用程序后,它失败并出现错误 pjsip.h file not found
.
Header Search Paths
的值:
- headers 个文件夹的结构
导入过程从突出显示的蓝色文件 pjsua.h
开始,然后导入其他 headers,那些用红色矩形标记的文件。
- 在
pjsua.h
中导入headers的完整列表
您可以看到导入的 headers 与成功导入的 pjsua.h
不在同一个文件夹中,但这不是 Header Search Paths
的工作来查找headers ?我不想弄乱 headers 文件夹的结构,因为它是第三方库,每次必须完成 'magic' 时都会更新它。包含路径在 Other C Flags
行中定义,与设置 Header Search Paths
相同。我不确定我错过了什么。
注:
- Headers路径正确。
- 它们不包含任何空格。
P.S This 没用。
更新:
此错误仅在为模拟器构建时显示,为真实设备构建时 Xcode 失败并出现多个错误 Redefinition of ...
解决方案简单但丑陋。也为主项目设置 Header Search Paths
和 Search Paths
。这绝对不是向项目添加框架的最佳方式,因为它公开了有关框架的详细信息,但这是解决问题的唯一方法。