我在Xcode之外构建了一个静态库,我希望在我的Xcode项目中使用它。我添加了库,它显示在Build Phases下 - >链接二进制文件与库以及一般 - >链接的框架和库。
我还将以下内容添加到General - >链接的框架和库:
我还在Build Settings中添加了以下标志 - >其他链接标志:
最后在Build Settings - >下Apple LLVM 8.1 - 语言 - C ++ - > C ++标准库 libstc ++(GNU C ++标准库)。
所以我认为这就是我所需要的,但是当我尝试构建时,我收到了编译错误:
架构arm64的未定义符号: " std :: __ 1 :: basic_ostream>& std :: __ 1 :: operator<<,std :: __ 1 :: allocator>(std :: __ 1 :: basic_ostream>&,std :: __ 1 :: basic_string,std :: __ 1 :: allocator> const&)",引自:...
对我来说,看起来C ++ 11标准库没有正确链接,我的静态库需要它。
我在这里缺少什么?
答案 0 :(得分:1)
所以我的解决方案是修改静态库,使其内部包含标准的lib。 我猜测,因为这是一个静态库,而不是动态库,它总是在内部寻找依赖关系,即使它们是外部链接的。