XCode 5 中如何在Command Line Tools项目中使用动态链接库dylib?

2014-02-08 09:26:36 +08:00
 trendzi
大家好:

我在Xcode 5创建了一个纯C的Command Line Tools项目。

这个项目使用了一个第三方的库,NAME.dylib。

我用gcc可以编译:

gcc main.c -lNAME -ldl -L/usr/local/NAME/lib -I/usr/local/NAME/include
编译生成的 a.out , 可以按照预期运行。

但是直接在XCode中运行,提示我:

undefined symbols for architecture x86_64:
xxxxxx
xxxxxx
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
我想应该是在某个地方告诉XCode ,需要的 dylib 在哪里。
可以我不知道该如何告诉XCode。

请大家帮忙,多谢。
3769 次点击
所在节点    iDev
3 条回复
alexrezit
2014-02-08 10:19:45 +08:00
在 build settings 里面加 search path.
txx
2014-02-08 10:24:28 +08:00
有的时候还要在other linler flag 里面添加 对应flag
jjgod
2014-02-08 13:33:55 +08:00
一般说来是用 @executable_path, @loader_path 或者 @rpath 来找到链接的 dylib。可以参考 http://nick.luckygarden.org/rpath-loader_path-executable_path/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/99299

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX