2012-07-26 44 views
2

我一直在尝试在Xcode中构建一些基于C++控制台的程序。我设法打开一个新项目(命令行工具 - > C++)并编辑main.cpp,但我仍然无法弄清楚两件事:如何从头开始构建Xcode 4上的C++项目 - 链接现有的和新的外部库

  • 如何创建新的.cpp和.h文件来建立新的库,特别是如何将它们链接到main.cpp(我实际上设法创建.h和.cpp文件,但用#include在main.cpp中导入它们似乎不起作用)
  • 我如何链接外部现有库?我有这个斯坦福C++库(从CS106B在iTunes U)这是一组.H头和归档的.o。

感谢

回答

1

如果你要使用你的项目来写C++库,你必须做的第一件事就是添加一个目标,你会写每个库。通过在项目窗口左侧的项目导航器中选择项目来打开项目编辑器。项目编辑器的底部是一个添加目标按钮。点击按钮。在Mac OS X中选择框架和库。从库目标列表中选择C/C++库或STL C++库。点击下一步按钮。在产品名称文本字段中输入库名称。使用“类型”菜单可创建动态或静态库。点击完成按钮。

创建库目标后,您可以向其添加新的C++文件。在创建新的C++文件时,确保将文件添加到库目标,而不是工具目标。在保存面板中选择库目标复选框。

现在是时候将库链接到工具目标了。从项目编辑器左侧的目标列表中选择工具目标。点击编辑器顶部的Build Phases按钮。点击Link Binary with Libraries构建阶段旁边的显示三角形。点击+按钮链接到现有的库。

您可能希望Xcode在构建工具目标时自动构建库目标。要让Xcode执行此操作,请单击Target Dependencies构建阶段旁边的显示三角形。点击+按钮添加依赖项。在打开的表格中选择一个库目标。

您将不得不提供更多信息来让任何人回答关于获取main.cpp以包含您创建的新文件的问题。最起码,你必须对你如何,包括main.cpp中的头文件和你是什么意思时,你说的#include似乎并没有工作提供代码。以下内容应包括:

#include "NewFile.h" 

其中NewFile.h是您创建的新头文件。

+0

什么是VS的 “STL C++库” 选项中的 “C/C++库” 选项之间的区别? – Tony 2012-10-18 01:43:06

+0

如果您使用C++中,最大的区别是在C/C++库项目不包括任何文件,而STL库项目包括源代码文件和配置设置文件。这两个项目类型都创建一个库。 – 2012-10-18 02:58:46

+0

有什么特别到STL项目模板创建的文件?项目设置本身有什么不同?另外我假设另一个区别是你不能使用STL C++来创建基于c的库? – Tony 2012-10-18 03:34:06

相关问题