我似乎无法将OpenCV配置为链接到非/usr/lib的FFMPEG库集.
我的LD_LIBRARY_PATH包含指向自定义安装FFMPEG的文件夹的直接链接:
LD_LIBRARY_PATH = / pathto / ffmpeg的-0.10.2 / lib中
另外,我已将pkgconfig配置为:
PKG_CONFIG_PATH = / samepathto / ffmpeg的-0.10.2 / LIB / pkgconfig /
但是在CMake中我找不到FFMPEG路径的任何设置 – 无论是基本还是自定义.与FFMPEG相关的唯一设置似乎是WITH_FFMPEG类型设置(设置为ON).
我可以构建OpenCV,但它似乎链接到libavcodec的系统库 – 这会导致冲突,因为系统库是版本.52,我安装的FFMPEG中的版本是.53.在没有相同系统库的机器上链接应用程序似乎没有链接到我的自定义安装OpenCV(特别是libavcodec),因为这(我在共享网络文件夹上安装这些库).
我不确定我的问题是建立和链接到错误版本的FFMPEG,或者是否在构建之后与我的环境有关(然后链接到错误的ffmpeg).
我在Linux,Redhat 6,OpenCV 2.3.1上构建.
最佳答案
就像是
export LD_LIBRARY_PATH=/ffmpeg_install_path/lib/
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/ffmpeg_install_path/lib/pkgconfig
export PKG_CONFIG_LIBDIR=$PKG_CONFIG_LIBDIR:/ffmpeg_install_path/lib/
应该管用.至少它适用于我的Ubuntu上的OpenCV 2.4.x.