美文网首页
duplicate symbol '_ALI_PLAYER_IN

duplicate symbol '_ALI_PLAYER_IN

作者: SpringAlways | 来源:发表于2020-04-20 16:25 被阅读0次

    今天在下沉播放器库的时候,遇到一个连接时的符号重复错误

    duplicate symbol '_ALI_PLAYER_INFO' in:
        /Users/hyf/Library/Developer/Xcode/DerivedData/reading-afktzynodwkybaehqyvlpcmoguzs/Build/Intermediates.noindex/reading.build/Debug-iphoneos/reading.build/Objects-normal/arm64/TKVideoControlBarView1.o
        /Users/hyf/Library/Developer/Xcode/DerivedData/reading-afktzynodwkybaehqyvlpcmoguzs/Build/Products/Debug-iphoneos/PFLVideoPlayer/libPFLVideoPlayer.a(TKVideoControlBarView.o)
    ld: 1 duplicate symbol for architecture arm64
    

    经mach-o view调查,果然有一个_ALI_PLAYER_INFO符号

    image.png

    由于是一个静态全局变量,所以在全局符号表中也有。


    image.png

    根据mach-o符号的变量规则,去掉前面_就是变量名,所以ALI_PLAYER_INFO就是了,找到同样的静态变量名称,修改掉即可。

    同时,我们用vim 打开view1.o文件


    image.png

    看到也确实有这样的一个符号写在里面,而且.o文件中其实是把方法名、静态变量名等放在了同一块位置,也就是符号表。
    这些符号信息,就是.o文件的symbol table位置


    image.png
    如果给你带来一点点帮助或启发,劳烦点个赞支持下博主~~
    

    over

    相关文章

      网友评论

          本文标题:duplicate symbol '_ALI_PLAYER_IN

          本文链接:https://www.haomeiwen.com/subject/gnpdihtx.html