IT评测·应用市场-qidao123.com技术社区
标题:
如何让ffmpeg运行时从当前目次加载库,而不是从/lib64
[打印本页]
作者:
十念
时间:
2024-11-11 12:21
标题:
如何让ffmpeg运行时从当前目次加载库,而不是从/lib64
程序在linux下运行时,一样寻常从 /lib64 目次下加载依赖的库文件,如xxx.so.
有时候,体系里没有这些库,也不想从体系目次下加载,怎么办呢?
看下面的调整过程。
利用的源代码是 ffmpeg-6.1.tar.xz
解压后,进入到ffmpeg-6.1
./configure --enable-libmp3lame --enable-rpath --prefix=/usr/local/ffmpeg
复制代码
注意:这里的--enable-rpath 非常紧张,只有加上这个选项,背面才能指定加载库的路径。
这里,也不需要 --libdir='$ORIGIN' 这个参数。
实行完上面的命令,会天生:ffmpeg-6.1/ffbuild/config.mak 文件,
主要就是修改这个文件了。
把 LDEXEFLAGS= -Wl,-rpath,/usr/local/ffmpeg/lib 改成:LDEXEFLAGS= -Wl,-rpath,'$$ORIGIN'
LDSOFLAGS= -Wl,-rpath,/usr/local/ffmpeg/lib 改成:LDSOFLAGS= -Wl,-rpath,'$$ORIGIN'
注意:
这里ORIGIN 要加单引号,且前面是2个$符号
。
利用 $ORIGIN
: 当你设置为 $ORIGIN 时,表示你希望库路径相对于可实行文件的位置。这在摆设时非常有用,由于它允允许实行文件和库文件在同一目次结构中移动,而无需修改路径。
保存,然后make 即可。
最后,天生的ffmpeg 大概ffprobe 就可以从自己当前所在的目次查找库文件了,
比如libxcb.so.1 等。
关于
$ORIGIN,请看这里
technovelty.org/linux/exploring-origin.html
https://www.technovelty.org/linux/exploring-origin.html
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/)
Powered by Discuz! X3.4