OStack程序员社区-中国程序员成长平台

标题: ios - Redlaser SDK 与 Scandit SDK 冲突 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 06:08
标题: ios - Redlaser SDK 与 Scandit SDK 冲突

    duplicate symbol _OBJC_IVAR_$_Decoder.image in:
     /Users/......./ScanditSDK/libscanditsdk-iphone-2.1.11.a(Decoder-3DF771F40A970F8E.o)
     /Users/......./RedLaser/libRedLaserSDK.a(Decoder-DD22F2D71AAA0F2E.o)

   duplicate symbol _OBJC_IVAR_$_Decoder.cropRect in:
    /Users/......./ScanditSDK/libscanditsdk-iphone-2.1.11.a(Decoder-3DF771F40A970F8E.o)
    /Users/......./RedLaser/libRedLaserSDK.a(Decoder-DD22F2D71AAA0F2E.o)

................................................................
................................................................
   ld: 20 duplicate symbols for architecture armv7
   clang: error: linker command failed with exit code 1 (use -v to see invocation)

当我尝试同时导入 RedLaser 和 Scandit SDK 时,我遇到了这些重复符号问题。谁能帮忙解决这个问题...

提前致谢。



Best Answer-推荐答案


看起来两个库都有一个同名的类。这并不罕见,因为他们解决的是同一个问题:扫描和解码条形码。

如果没有一个提供者更改类的名称,您将无法避免此错误。联系他们解决您的问题。

事实上,作为 SDK 提供者,RedLaser 和 Scandit 绝对应该使用 namespaces默认。使用命名空间的一大原因是避免重复符号错误。

您的另一个选择是删除其中一个库(或两者),并使用其他一些条码扫描 SDK,例如 ZXing , Zbar , 或 pdf417.mobi

关于ios - Redlaser SDK 与 Scandit SDK 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29372051/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4