我在我的项目中使用了一些“.o”文件,在编译它时显示以下错误,

error:linker command failed with exit code 1 (use -v to see invocation)

我在下面发布了错误日志
Ld /Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Products/Debug-iphonesimulator/app.app/app normal i386
    cd /Users/deepak/Workspace/iosDevelopement/PROJECTS/KML/app
    setenv IPHONEOS_DEPLOYMENT_TARGET 4.3
    setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
    /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk -L/Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Products/Debug-iphonesimulator -F/Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Products/Debug-iphonesimulator -F/Users/deepak/Workspace/iosDevelopement/PROJECTS/KML/app -filelist /Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Intermediates/app.build/Debug-iphonesimulator/app.build/Objects-normal/i386/app.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=4.3 -lstdc++ -licucore -lz -framework MapKit -framework CoreLocation -framework QuartzCore -framework UIKit -framework Foundation -framework CoreGraphics -framework KML -o /Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Products/Debug-iphonesimulator/app.app/app
Undefined symbols for architecture i386:
  "_OBJC_CLASS_$_ZipException", referenced from:
      objc-class-ref in ZipFile.o
      objc-class-ref in ZipReadStream.o
      objc-class-ref in ZipWriteStream.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

一开始,错误较多,通过导入 libs.dylib 框架解决,

但仍然存在 2 个错误。

编辑:我已经通过了流行的问题 Undefined symbols for architecture i386: _OBJC_CLASS_$_SKPSMTPMessage", referenced from: error ,但解决方案对我不起作用

有谁知道我哪里出错了?这是 xcode 的问题,是否有任何缺少的库或链接失败?

提前致谢

最佳答案

错误消息说 undefined symbol 被 ZipFile.oZipReadStream.oZipWriteStream.o 引用。这意味着您正在尝试在应用程序中使用Objective-Zip库。

undefined symbol 是 _OBJC_CLASS_$_ZipException 。当编译器在源文件中看到@implemention ZipException指令时,将生成此符号。

Objective-Zip 库包含一个名为 ZipException.m 的文件,其中包含 @implementation ZipException 指令。

最可能的解释是您根本没有在目标中包含 ZipException.m。检查您是否已这样做。如果您不知道如何操作,请查看 this answer

另一种可能的解释是,您可能无意中修改了 ZipException.m 文件,删除了 @implementation ZipException 指令或对编译器隐藏了它。检查您是否没有修改该文件,并且它包含 @implementation ZipException 指令。

关于ios - 架构 i386 : "_OBJC_CLASS_$_ZipException", 的 undefined symbol 引用自:错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14157632/

10-10 21:02