ios - 为 iOS 设备构建成功但为 iOS 模拟器构建错误

标签 ios xcode ios-simulator static-libraries

我一直面临这个挥之不去的问题。当我尝试通过在我的 Xcode 中选择 iOS 设备来构建项目时,它会构建代码而不会出现任何错误,但是当我尝试使用 iOS 模拟器进行相同操作时,它会显示以下错误。当我在模拟器中构建时,有什么办法可以避免这个库文件吗?我也尝试了以下链接,但我无法找到确切的解决方案。

提前致谢。

6 duplicate symbols for architecture i386

ld: warning: ignoring file /Users/iOS-MobileTeam/Downloads/iOS/LibraryFiles/libANMobilePaymentLib.a, missing required architecture i386 in file /Users/iOS-MobileTeam/Downloads/iOS/LibraryFiles/libANMobilePaymentLib.a (2 slices)
    duplicate symbol _des_set_key in:
        /Users/iOS-MobileTeam/Downloads/iOS/LineaSDK/libdtdev.a(des-524F6BE9122BCA82.o)
        /Users/iOS-MobileTeam/Downloads/iOS/LineaSDK/libdtdev.a(des-D9CE0CBEE0B3BA81.o)
    duplicate symbol _des_encrypt in:
        /Users/iOS-MobileTeam/Downloads/iOS/LineaSDK/libdtdev.a(des-524F6BE9122BCA82.o)
        /Users/iOS-MobileTeam/Downloads/iOS/LineaSDK/libdtdev.a(des-D9CE0CBEE0B3BA81.o)
    duplicate symbol _des_decrypt in:
        /Users/iOS-MobileTeam/Downloads/iOS/LineaSDK/libdtdev.a(des-524F6BE9122BCA82.o)
        /Users/iOS-MobileTeam/Downloads/iOS/LineaSDK/libdtdev.a(des-D9CE0CBEE0B3BA81.o)
    ld: 3 duplicate symbols for architecture i386
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

    Ignoring file /Users/iOS-MobileTeam/Downloads/iOS/LibraryFiles/libANMobilePaymentLib.a, missing required architecture i386 in file /Users/iOS-MobileTeam/Downloads/iOS/LibraryFiles/libANMobilePaymentLib.a (2 slices)

最佳答案

静态库已损坏,因为它包含两个包含相同符号(函数)的独立目标文件。

它必须重建,或者如果您没有源代码,您可以将其解压,删除有问题的文件,然后重新打包(未经测试):

$ mv libdtdev.a libdtdev-old.a
$ mkdir xxx
$ cd xxx
$ ar x ../libdtdev-old.a
$ rm des-D9CE0CBEE0B3BA81.o
$ ar cr ../libdtdev.a *.o
$ cd ..
$ rm -rf xxx

但是,如果静态库包含多个体系结构,这将变得复杂。

关于ios - 为 iOS 设备构建成功但为 iOS 模拟器构建错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27033775/

相关文章:

ios - 有没有办法获得引用以查看本地通知中剩余的剩余时间,并更新它?

iOS 摇一摇手势 - 双摇

xcode - 是否可以在 Xcode 6-beta 上安装 iOS6 SDK?

iOS 在模拟器中工作,在 iphone 上通过 xcode 但在通过 itunes 复制存档时崩溃

ios - 如何以编程方式添加 UI/ View Controller ?

ios - 应用程序开始在 iOS 9.1 Beta 2 上崩溃

ios - swift 4 "This class is not key value coding compliant"

ios - IOS 中启动屏幕和初始屏幕之间的故障

ios - 应用程序无法在 iOS 和 React-native 的模拟器上启动

ios - 当 Timer 为每个 UITableViewCell 运行时,它们没有被正确回收