标题
xcode 项目默认不能编译相对目录 include 代码的原因 [SRCROOT]
clq
浏览(522) +
2021-07-08 11:47:25 发表
编辑
关键字:
xcode 项目默认不能编译相对目录 include 代码的原因。
这在引入第三方库时会很致命。
xcode 默认的编译源码目录并不在工程生成的代码目录中,所以默认是不能直接 include 项目中的相对文件夹的。
这时候要加 include 搜索路径。路径可以写
$(SRCROOT)/[工程生成的源码目录]
不过测试下来也可以直接写
[工程生成的源码目录] 就可以了,如果没有改动的话它其实就是项目的名称。
另外这个搜索是不能设置在工程文件的属性中的。要设置到 “目标” 即 targets 或者说是 products 中。
这在将代码移植到其他编译器时会是一个巨坑。
参考
---------------------------------------------------------------
$(PROJECT_DIR)代表的是整个项目
$(SRCROOT)代表的是项目根目录下
${PODS_ROOT}代表的是pod目录
recursive(会在相应的目录递归搜索文件)
non-recursive (非递归)
$(inherited)是什么?
在Xcode项目中很多地方都有 $(inherited),$(inherited)的意思就是继承上一级或依赖项的配置。通过CocoaPods集成的项目,$(inherited)将会包含Pods.xcodeproj中的配置。
$(inherited),这个是target在设置自己路径的时候如果加了这个,那么就是继承project里设置的路径。如果不需要继承就不加,要不然乱加有可能整混导致路径错误。
NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.