我在我的项目中包含libzar.a,但是,即使我没有编写任何代码来引用libzar中的任何方法,我的项目仍然无法链接。这是错误输出,
Undefined symbols for architecture i386:
“_ CVPixelBufferGetBaseAddressOfPlane”,引自: - libxxx.a中的[ZBarCVImage convertCVtoRGB](ZBarCVImage.o)
“_ CVPixelBufferGetBytesPerRowOfPlane”,引自: - libxxx.a中的[ZBarCVImage convertCVtoRGB](ZBarCVImage.o)
“_ CVPixelBufferGetHeight”,引自: - libxxx.a中的[ZBarCVImage convertCVtoRGB](ZBarCVImage.o)
“_ CVPixelBufferGetWidth”,引自: - libxxx.a中的[ZBarCVImage convertCVtoRGB](ZBarCVImage.o)
“_ CVPixelBufferLockBaseAddress”,引自: - libxxx.a中的[ZBarCVImage convertCVtoRGB](ZBarCVImage.o)
“_ CVPixelBufferRelease”,引自: - libxxx.a中的[ZBarCVImage setPixelBuffer:](ZBarCVImage.o)
“_ CVPixelBufferRetain”,引自: - libxxx.a中的[ZBarCVImage setPixelBuffer:](ZBarCVImage.o)
“_ CVPixelBufferUnlockBaseAddress”,引自: - libxxx.a中的[ZBarCVImage convertCVtoRGB](ZBarCVImage.o)
“_ iconv”,引自: libxxx.a中的_qr_code_data_list_extract_text(qrdectxt.o)
“_ iconv_close”,引自: libxxx.a中的_qr_code_data_list_extract_text(qrdectxt.o)
“_ iconv_open”,引自: libxxx.a中的_qr_code_data_list_extract_text(qrdectxt.o)
ld:找不到架构i386的符号 clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)
这就是我做的,
1.刚刚将libzar.a添加到我的项目中
2.建立应用程序
3.错误
我的链接配置只添加了-all_load和-ObjC选项。传统上,如果我从不引用静态库中的任何代码,那么它永远不会是这样的链接错误。我错过了吗?
答案 0 :(得分:3)
将CoreVideo.framework添加到“Link Binary With Libraries”构建阶段应该清除它。