2017-10-10 43 views
0

我使用Xcode 9构建需要链接大量独立库(.a和.dylib文件)的项目,这些独立库位于任意目录之外我的项目。在Xcode中添加相对于自定义位置的链接库

我可以构建,如果我手动将所有这些库添加到链接的框架和库,但我硬编码到此任意目录的相对路径。

有没有办法将库添加到链接框架和库列表中,但将它们添加为相对于用户定义位置的路径,可能是指定为用户定义生成设置的位置?

具体而言,我有一个环境变量G3D指定一个路径。所有这些库都是关闭的$G3D/build/libraries。但通过拖放将它们添加到我的项目后,File Inspector只允许我指定它们的位置,因为它们相对于组,相对于工作空间等等。

可以指定相对于任意变量的库如果我完全退出链接框架列表,并使用其他链接标志构建设置指定所有链接库,但会引入它自己的问题。

回答

0

那么,在您的构建设置的框架搜索路径中,您可以引用您的用户定义的构建设置。假设你有一个用户定义的构建设置REALM_PATH,它指定了一部分路径。

然后在您的Framework Search Paths构建设置中,您可以添加一些路径并通过在其周围放置$ {}来插入REALM_PATH。例如。

${PROJECT_DIR}/../../External/ThirdParty/submodules/${REALM_PATH} 
+0

但是,当我将项目添加到链接的框架和库,并提高其选择控件,让我选择内置框架或任意位置,将它现在证明,让我选择库和框架这是在框架搜索路径中,仅仅是因为用户定义的设置? – algal

+0

我不这么认为。上周我发现自己也处于这种情况。我只是简单地将项目导航器窗格中的框架拖动到Linked Frameworks和Libraries构建阶段。它工作得很好。 – Smartcat

+0

但是,这没有定义你的项目,所以它现在已经硬编码到这些库的项目相对路径,而不是,例如,REALM_PATH根路径? – algal

相关问题