美文网首页
iOS IJK 必须依赖的系统库

iOS IJK 必须依赖的系统库

作者: glView | 来源:发表于2020-04-01 17:31 被阅读0次

    将IJK集成到项目中后,必须要添加以下两个系统库libz.tbd、libc++.tbd。


    屏幕快照 2019-09-12 上午10.58.05.png

    1、不添加libz.tbd会抛出以下错误:
    Undefined symbols for architecture x86_64:
    "_zlibCompileFlags", referenced from:
    _http_read_header in IJKMediaFramework(http.o)
    "_deflate", referenced from:
    _encode_frame in IJKMediaFramework(pngenc.o)
    "_deflateReset", referenced from:
    _encode_frame in IJKMediaFramework(pngenc.o)
    "_inflate", referenced from:
    _matroska_decode_buffer in IJKMediaFramework(matroskadec.o)
    _http_read_stream in IJKMediaFramework(http.o)
    _rtmp_open in IJKMediaFramework(rtmpproto.o)
    "_deflateBound", referenced from:
    _encode_png in IJKMediaFramework(pngenc.o)
    _encode_apng in IJKMediaFramework(pngenc.o)
    "deflateInit2", referenced from:
    _png_enc_init in IJKMediaFramework(pngenc.o)
    "inflateInit2", referenced from:
    _http_read_header in IJKMediaFramework(http.o)
    "_deflateEnd", referenced from:
    _png_enc_close in IJKMediaFramework(pngenc.o)
    "inflateInit", referenced from:
    _matroska_decode_buffer in IJKMediaFramework(matroskadec.o)
    _rtmp_open in IJKMediaFramework(rtmpproto.o)
    "_inflateEnd", referenced from:
    _matroska_decode_buffer in IJKMediaFramework(matroskadec.o)
    _http_close in IJKMediaFramework(http.o)
    _http_read_header in IJKMediaFramework(http.o)
    _rtmp_open in IJKMediaFramework(rtmpproto.o)
    "_uncompress", referenced from:
    _id3v2_read_internal in IJKMediaFramework(id3v2.o)
    _mov_read_cmov in IJKMediaFramework(mov.o)

    2、不添加libc++.tbd会抛出以下错误:
    "operator delete(void)", referenced from:
    _ijk_map_destroy in IJKMediaFramework(ijkstl.o)
    std::__1::__tree<std::__1::__value_type<long long, void
    >, std::__1::__map_value_compare<long long, std::__1::__value_type<long long, void>, std::__1::less<long long>, true>, std::__1::allocator<std::__1::__value_type<long long, void> > >::destroy(std::__1::__tree_node<std::__1::__value_type<long long, void>, void>) in IJKMediaFramework(ijkstl.o)
    std::__1::__tree<std::__1::__value_type<long long, void
    >, std::__1::__map_value_compare<long long, std::__1::__value_type<long long, void>, std::__1::less<long long>, true>, std::__1::allocator<std::__1::__value_type<long long, void> > >::erase(std::__1::__tree_const_iterator<std::__1::__value_type<long long, void>, std::__1::__tree_node<std::__1::__value_type<long long, void>, void>, long>) in IJKMediaFramework(ijkstl.o)
    "operator new(unsigned long)", referenced from:
    _ijk_map_create in IJKMediaFramework(ijkstl.o)
    std::__1::pair<std::__1::__tree_iterator<std::__1::__value_type<long long, void>, std::__1::__tree_node<std::__1::__value_type<long long, void>, void>, long>, bool> std::__1::__tree<std::__1::__value_type<long long, void>, std::__1::__map_value_compare<long long, std::__1::__value_type<long long, void>, std::__1::less<long long>, true>, std::__1::allocator<std::__1::__value_type<long long, void*> > >::__emplace_unique_key_args<long long, std::__1::piecewise_construct_t const&, std::__1::tuple<long long const&>, std::__1::tuple<> >(long long const&, std::__1::piecewise_construct_t const&&&, std::__1::tuple<long long const&>&&, std::__1::tuple<>&&) in IJKMediaFramework(ijkstl.o)

    相关文章

      网友评论

          本文标题:iOS IJK 必须依赖的系统库

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