我项目中用到了liblibPDRCore.a和第三方的libEaseMobClientSDKLite.a,编译时报错unzip.o冲突,我把liblibPDRCore.a解开,删除其中的unzip.o合并后编译又报错:
Undefined symbols for architecture i386:
"_fill_fopen_filefuncZBQ", referenced from:
_zipOpen2 in liblibPDRCore.a(zip.o)
"_unzCloseCurrentFileZBQ", referenced from:
-[ZipArchive UnzipFileTo:overWrite:] in liblibPDRCore.a(ZipArchive.o)
"_unzCloseZBQ", referenced from:
-[ZipArchive UnzipCloseFile] in liblibPDRCore.a(ZipArchive.o)
"_unzGetCurrentFileInfoZBQ", referenced from:
-[ZipArchive UnzipFileTo:overWrite:] in liblibPDRCore.a(ZipArchive.o)
"_unzGetGlobalInf", referenced from:
-[ZipArchive UnzipOpenFile:] in liblibPDRCore.a(ZipArchive.o)
(maybe you meant: _unzGetGlobalInfo)
"_unzGoToFirstFileZBQ", referenced from:
-[ZipArchive UnzipFileTo:overWrite:] in liblibPDRCore.a(ZipArchive.o)
"_unzGoToNextFileZBQ", referenced from:
-[ZipArchive UnzipFileTo:overWrite:] in liblibPDRCore.a(ZipArchive.o)
"_unzOpenCurrentFilePasswordZBQ", referenced from:
-[ZipArchive UnzipFileTo:overWrite:] in liblibPDRCore.a(ZipArchive.o)
"_unzOpenCurrentFileZBQ", referenced from:
-[ZipArchive UnzipFileTo:overWrite:] in liblibPDRCore.a(ZipArchive.o)
"_unzOpenZBQ", referenced from:
-[ZipArchive UnzipOpenFile:] in liblibPDRCore.a(ZipArchive.o)
"_unzReadCurrentFileZBQ", referenced from:
-[ZipArchive UnzipFileTo:overWrite:] in liblibPDRCore.a(ZipArchive.o)
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exi
请问有办法解决吗?
1 个回复
John_smith
这个我这也遇到,他们可能是吧第三方库打包到静态库里面了(这点感觉他们真菜),我现在是暂时把项目中的第三方库的引用去掉了,但是这种方法治标不治本。