编译ffmpeg动态库时设置RPATH为$ORIGIN

原本,我这样编译:

bash 复制代码
./configure \
	--enable-xxx \
	--disable-yyy \
	...

为了设置 RPATH, 尝试了在 configure 后面设置,如下几种都无效:

复制代码
--extra-ldsoflags="-Wl,-rpath,$ORIGIN"
没有 RPATH

--extra-ldsoflags="-Wl,-rpath,'$ORIGIN'"
没有 RPATH

--extra-ldsoflags="-Wl,-rpath,\"$ORIGIN\""
没有 RPATH

--extra-ldsoflags="-Wl,-rpath,/mnt"
RPATH: /mnt

--extra-ldsoflags="-Wl,-rpath,\$ORIGIN"
没有 RPATH

--extra-ldsoflags="-Wl,-rpath,'\$ORIGIN'"
没有 RPATH

--extra-ldsoflags="-Wl,-rpath,\\\$ORIGIN"
RPATH: RIGIN

--extra-ldsoflags="-Wl,-rpath,'\\$ORIGIN'"
RPATH: \

--extra-ldsoflags="-Wl,-rpath,'$$ORIGIN'"
RPATH: 258002ORIGIN

--extra-ldsoflags="-Wl,-rpath,'\$$ORIGIN'"
Syntax error: Unterminated quoted string

原本已经在谷歌搜索, 找到了 Bundling FFMPEG using CMAKE and RPATH 这篇, 但误以为是标题说的基于 cmake 的构建; 其实仍然是基于 makefile 的构建, 文章说的很到位。

最终有效的设定,是设置 LDSOFLAGS=-Wl,-rpath,\''$$$$ORIGIN'\' 之后,再 configure:

bash 复制代码
export LDSOFLAGS=-Wl,-rpath,\''$$$$ORIGIN'\'
./configure \
	--enable-xxx \
	--disable-yyy \
	...
相关推荐
用户967151139167213 小时前
Rust 如何轻松实现 RTMP 流媒体推送?深入解析直播推流场景与解决方案
rust·ffmpeg
小小码农Come on13 小时前
ffmpeg命令整理
ffmpeg
暮云星影13 小时前
三、FFmpeg学习笔记
linux·ffmpeg
都非拉得1 天前
FFmpeg命令详解
ffmpeg
cuijiecheng20181 天前
音视频入门基础:MPEG2-TS专题(26)——通过FFmpeg命令使用RTP发送TS流
ffmpeg·音视频
Yeauty2 天前
Rust 中的高效视频处理:利用硬件加速应对高分辨率视频
开发语言·rust·ffmpeg·音视频·音频·视频
winfredzhang2 天前
Python视频标签工具详解:基于wxPython和FFmpeg的实现
python·ffmpeg·音视频·视频标签
Yeauty3 天前
从0到1:Rust 如何用 FFmpeg 和 OpenGL 打造硬核视频特效
rust·ffmpeg·音视频
witton4 天前
MinGW下编译ffmpeg源码时生成compile_commands.json
ffmpeg·json·makefile·mingw·调试·compile_command·remake