c++ - 如何使用 Xcode 在 C++ 项目中添加静态库

标签 c++ xcode static-libraries static-linking

我正在使用 Xcode 4.6.1 作为 IDE 开发一个 C++ 项目。 现在,我想添加一个静态库 mylib.a 和相关的头文件 mylib.h

我读到关于 this solution ,但它不起作用(单击Target Dependencies 时,该框仍为空)。

有没有办法完成这个任务?


更新:

我创建了一个,然后在上面添加了文件mylib.a。似乎工作正常,但在编译时出现如下警告:

ld: warning: ignoring file /Users/vdenotaris/Desktop/Code/MyStaticLib/mylib.a, file was built for archive which is not the architecture being linked
(i386):/Users/vdenotaris/Desktop/Code/MyStaticLib/mylib.a

最佳答案

如果您的静态库是由另一个 XCode 项目创建的,并且您想包含该项目,则使用目标依赖项,以便您可以轻松地在您的库和相应的应用程序上进行开发。

如果你想包含一个外国图书馆,你可以在TARGETS下选择你的目标在那里你选择部分Build Phases在那里你有区域Link Binary With库到这个区域,您可以通过拖放+符号添加您的库。

要添加包含路径,请在PROJECT 下选择您的项目,然后在Build Settings 下选择Search Path header 搜索路径这应该包括 header 所在目录的路径。

ProjectTargets 中设置的区别在于,在 Project 中,它为所有目标设置了默认设置。在目标中,您可以更改每个目标的设置。

编辑 对于链接错误,这两个答案可能会有所帮助:

关于c++ - 如何使用 Xcode 在 C++ 项目中添加静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15973472/

相关文章:

python - 从 Python 中返回 include 和 runtime lib 目录

ios - 强制 iPad 视网膜模拟器适应 MacBook Air 屏幕

CMake:导入的库作为另一个自定义命令或目标的 OUTPUT 或 BYPRODUCTS

iphone - 如何从 iOS 中已有的源代码创建静态库或框架

c++ - 为什么C++中的成员类要先初始化?

iphone - iOS SDK : playing music on the background and switching views

IOS : Building Fails

c++ - C语言监控Windows操作系统进程

c++ - 为什么 C++20 范围适配器的返回 View 不是常量表达式?

c++ - If 语句:值列表