【发布时间】:2011-11-16 16:22:40
【问题描述】:
新手问题:
我在 c++ 中有一个小型测试类 (TestLibMain.cpp),并将其编译为“libTestLib.dylib”,该“libTestLib.dylib”位于包含 TestLibMain.h 文件的目录的子目录“debug”中。
如何使用我的 Xcode 项目中的 dylib?我在代码中导入了 TestLibMain.h,并在构建设置中设置了 Header-search 路径。这工作正常。但是现在链接器告诉我他找不到dylib(也找不到他可以自己编译的“TestLibMain.cpp”文件......)。在 Ecpise/CDT 中创建的 dylib 有一个不同的名称:“libTestLib.dylib”。在 Xcode 中设置“库搜索路径”没有帮助....
这是我的错误信息:
Undefined symbols for architecture i386:
"TestLibMain::TestLibMain()", referenced from:
-[tbViewController viewWillAppear:] in tbViewController.o
"TestLibMain::getNumber()", referenced from:
-[tbViewController viewWillAppear:] in tbViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
问题:
- 是否可以在 Xcode 中链接为 i386 创建的 dylib 文件?我想在 Xcode 项目中使用从 Eclipse 中的项目编译的库(我想在 Android NDK 中重用...)
- 如何让 Xcode 找到 dylib 文件?
- dylib 文件实际上是链接的正确文件吗? eclipse没有创建.a文件,但是有.d和.o文件?
【问题讨论】:
标签: objective-c xcode4.2 objective-c++ xcodebuild