我已经在测试项目中成功集成和配置了我的CardboardSDK项目,现在我想将它集成到我的主项目中,该项目已经使用GTL库进行YouTube上传,在这个新项目中,我得到了641具有奇怪名称的类的重复符号。
我尝试过的事情:
我已经解决了与GoogleAdMob和GoogleConversion SDK的一些冲突。 我已经解决了所有可以在项目中的其他地方找到相关类名的情况的冲突,例如AFNetworking,OAuth等。
但仍然有641个重复的符号。
duplicate symbol __ZN6google8protobuf8internal20InitLogSilencerCountEv in:
/Users/sabirali/Documents/4.2.1/libCardboardSDK.a(common.o)
duplicate symbol __ZN6google8protobuf8internal22DeleteLogSilencerCountEv in:
/Users/sabirali/Documents/4.2.1/libCardboardSDK.a(common.o)
...
...
duplicate symbol __ZN6google8protobuf2io18StringOutputStreamC1EPNSt3__112basic_stringIcNS3_11char_traitsIcEENS3_9allocatorIcEEEE in:
/Users/sabirali/Documents/4.2.1/libCardboardSDK.a(zero_copy_stream_impl_lite.o)
duplicate symbol __ZN6google8protobuf2io22LazyStringOutputStreamC2EPNS0_14ResultCallbackIPNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEEE in:
/Users/sabirali/Documents/4.2.1/libCardboardSDK.a(zero_copy_stream_impl_lite.o)
duplicate symbol __ZN6google8protobuf2io22LazyStringOutputStreamC1EPNS0_14ResultCallbackIPNSt3__112basic_stringIcNS4_11char_traitsIcEENS4_9allocatorIcEEEEEE in:
/Users/sabirali/Documents/4.2.1/libCardboardSDK.a(zero_copy_stream_impl_lite.o)
ld: 641 duplicate symbols for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
问题:
__ZN6google8protobuf8internal20InitLogSilencerCountEv
是随机生成的吗? 更新
我发现问题不在于YouTube API,因为我已从我的项目中移除了该API和所有其他Google SDK,但仍然存在冲突。
我已经检查了SDK中的目标文件,而不是它们,其内部的protobuf
库正在被Cardboard SDK中的一些内部使用。
如何找出哪个库具有protobuf
作为依赖?