从xCode引用和取消引用文件

时间:2015-01-16 05:05:47

标签: ios xcode static-libraries

我正在开发一个项目,其中一些文件未从项目中引用,但它们在其他类中使用。它没有抛出文件未找到错误。

例如 myclass 是一个未添加到项目中的文件(它在项目导航器中不可用),但它被导入到其他类中,如 #import" myclass .H" 即可。如果我跳转到定义它是在xcode编辑器中打开myclass文件。没有显示路径。

任何人都知道他们如何将这些文件包含在项目中吗?

1 个答案:

答案 0 :(得分:0)

编译器将查找传递给它的任何搜索路径中的文件。编译项目时,Xcode会将它运行的命令输出到日志中,您可以查看它发送给编译器的参数。

要查看此信息,请单击导航器中的“构建日志”按钮,然后选择上一个版本。在构建日志窗口中,单击"所有消息"选项卡可以查看构建的每个步骤,甚至是成功的步骤。在消息窗格的右侧,有一个不可见的按钮。如果您选择一行,它将显示。或者如果你将鼠标悬停在它上面,它会出现,它看起来像一个带文字的小页面。单击它以查看Xcode发送给编译器的所有参数。它看起来像这样:

  

CompileC /Users/username/Library/Developer/Xcode/DerivedData/projectname-oaenustheonoresuorcoehun/Build/Intermediates/projectanme.build/Debug/projectname.build/Objects-normal/x86_64/AppDelegate.o projectname / AppDelegate.m normal x86_64 objective-c com.apple.compilers.llvm.clang.1_0.compiler       cd / Users / username / Development / projectname       export LANG = en_US.US-ASCII       /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -x objective-c -arch x86_64 ...一堆已删除的东西...... -isysroot /Applications/Xcode.app/目录/开发人员/平台/ MacOSX.platform / Developer / SDKs / MacOSX10.10.sdk ... -I / Users / username / Library / Developer / Xcode / DerivedData / projectname -bdvjbpksruxnxobesveirmfeqgyn / Build / Products / Debug / include -I /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include ... -F / Users / username / Library / Developer / Xcode / DerivedData / projectname -bdvjbpksruxnxobesveirmfeqgyn / Build / Products / Debug ... -c /Users/username/Development/projectname/projectname/AppDelegate.m -o /Users/username/Library/Developer/Xcode/DerivedData/projectname-bdvjbpksruxnxobesveirmfeqgyn/Build/Intermediates/projectname.build/Debug/projectname.build/Objects - 正常/ x86_64的/ AppDelegate.o

各种-I-F参数告诉clang(编译器)在哪里查找文件。可能还有隐含的目录,例如您正在编译的文件来自的目录。

您可以为编译器搜索源文件和标头的位置添加自己的路径。为此,打开项目导航器并单击项目的图标。这将打开项目设置编辑器。单击您正在使用的目标(如果您希望所有目标都继承该设置,则单击该项目)。然后点击"设置"标签。看起来应该是这样的:

Build settings

如果您输入"搜索"在搜索字段中,它将显示"搜索路径"设置。您可以在那里输入标题,框架或库搜索路径。