avbuild
avbuild copied to clipboard
能否提供mac和ios的动态库
为了避免LGPL协议的问题,能否提供mac和ios平台的动态库(framework)?同为LGPL协议的OpenAL soft就提供了这个编译选项。
macOS提供了dylib,没必要做成framework. iOS后续会加,会编译成FFmpeg.framework
感谢回复。我在使用dylib的时候遇到了一个问题,在复制进app的时候libffmpeg.4.3.dylib
的两个替身都变成了原始文件,不复制替身就只能链接带版本号的dylib(直接改名会提示找不到libffmpeg.4.dylib
)。能不能直接提供不带版本号的版本呢?
可能你用法不正确,运行时库带主版本号的是正常的,链接用libffmpeg.dylib,放到app里用libffmpeg.4.dylib,重命名也好cp -L也好。
好吧,我再研究一下。Xcode的Copy Files没法处理替身,只能另想办法了。
你试下最新的ios包,带了libffmpeg.4.dylib。iOS不能在framework外有dylib,不然会被拒绝上架。可以尝试下这个方法:新建个FFmpeg.framework文件夹,把libffmpeg.4.dylib复制进去,在FFmpeg.framework里运行ln -sf libffmpeg.4.dylib FFmpeg
,链接的时候参数加上-Wl,-rpath,@executable_path/../Frameworks/FFmpeg.framework
你好,我发现手动用dylib制作的framework无法通过签名,提示找不到路径XXX.framework/Versions/A
,把替身放到该路径也不行,提示bundle format unrecognized, invalid, or unsuitable
。Xcode版本是11.3.1,系统版本是10.15.7。
另外据我了解,mac版本要上架也是只能用framework的。
Showing Recent Errors Only Undefined symbol: _wolfSSL_CTX_SetIORecv
@cherishloveyou try the latest master build
@cherishloveyou try the latest master build
Undefined symbols for architecture arm64: "_xmlCheckVersion", referenced from: _parse_manifest in libavformat.a(dashdec.o)
add -lxml2 to link flags
add -lxml2 to link flags
Yes, seems it work!
is the reason ffmpeg 5.0 should link xml2?
like pre version ffmpeg link libiconv.tbd libz.tbd libbz2.tbd?
libxml2 is used by dash. you can build yourself and disable dash