我有两个预先存在的Xcode工作区。一,Parent.xcworkspace
是一个iOS应用程序。另一个SomeChild.xcworkspace
是一个C ++静态库。 SomeChild工作区位于Parent工作区的git子模块中。
我想从SomeChild工作区获取一个项目并将其添加到Parent.xcworkspace
,以便在构建父工作区中的依赖项目时构建代码并静态链接。
它几乎可以工作,但在构建父工作区iOS应用程序时的链接时,链接器会发出
clang: error: no such file or directory: '/Users/me/Library/Developer/Xcode/DerivedData/Parent-hagqyrdsdfsdfsdfphgbsolz/Build/Products/Debug-iphonesimulator/libSomeChild.a'
是的,libSomeChild.a不存在于以-iphonesimulator/
结尾的目录中
libSomeChild 存在于
中/Users/me/Library/Developer/Xcode/DerivedData/Parent-hagqyrdsdfsdfsdfphgbsolz/Build/Products/Debug/
总而言之:除了没有-iphonesimulator
后缀之外,lib正被输出到与错误几乎相同的路径。
如何修复此版本?
编辑:
这个问题非常相似,但并没有真正得到答案 Xcode 6.1 static library .a for iOS not generated
答案 0 :(得分:0)
这不是一个完整的答案,因为我没有解决问题。但根本原因似乎是子项目正在为x86_64架构构建,但iOS项目需要arm架构。
在我的情况下,将子代码文件添加到iOS目标更简单,而不是尝试构建子xcproj并链接到静态库。