2011-04-11 57 views
1

我目前正在创建一个静态库,其中包含我想提供给其他一些应用程序的功能。但是,我的静态库需要libxml2.dylib,并且编译我的静态库目前失败,因为它无法访问dylib。有没有办法链接我的静态库与动态库?可能将我的静态库与Xcode中的动态库链接?

回答

0

是的,这是可能的。但是,生成的静态库将对运行时的依赖性为libxml2。请注意,您必须使用-L开关在链接时指定动态库的位置。假设您使用MacPorts安装了libxml2,则路径为/opt/local/lib

g++ -staticlib -o libyourlib.a file1.o file2.o -L/opt/local/lib -lxml2 
+0

感谢您的回复。对不起,我想我应该提到我正在使用obj-c。是否有与使用xcodebuild命令的命令等价的东西? – jkt610 2011-04-13 06:26:04

+0

哦,应该暗示,因为大多数人都这么做...... :)我猜想有一个项目设置,而不是您可以使用的xcodebuild开关。目前还不清楚链接器给你的错误,所以我不能给你任何提示。但是,如果您链​​接的dylib位于框架内,请检查“框架搜索路径”以开始。 – vidstige 2011-04-13 08:24:42