错误消息
You must install libavformat-dev and libswscale-dev to build mod_av
问题原因
这实际上是因为没有安装ffmpeg导致的问题,千万不要直接去安装libavformat-dev
解决办法
1、安装yasm
cd /usr/local/src/
mkdir yasm
cd yasm
wget http://www.tortall.net/projects/yasm/releases/yasm-1.3.0.tar.gz
tar -zxvf yasm-1.3.0.tar.gz
cd yasm-1.3.0
./configure
make
make install
yasm --version
2、安装nasm
cd /usr/local/src/
mkdir nasm
cd nasm
wget http://www.nasm.us/pub/nasm/releasebuilds/2.13/nasm-2.13.tar.gz --no-check-certificate
tar xzvf nasm-2.13.tar.gz
cd nasm-2.13
./configure
make
make install
nasm --version
3、安装x264
cd /usr/local/src/
mkdir x264
cd x264
git clone https://code.videolan.org/videolan/x264.git
cd x264
./configure --enable-shared
make
make install
x264 --version
4、安装ffmpeg,编译参数可参考以下文章
https://johnvansickle.com/ffmpeg/release-source/
https://stackoverflow.com/questions/25539034/opencv-make-fails-recompile-with-fpic
cd /usr/local/src/
rm -rf ffmpeg
mkdir ffmpeg
cd ffmpeg
wget https://johnvansickle.com/ffmpeg/release-source/ffmpeg-4.1.tar.xz --no-check-certificate
tar -xf ffmpeg-4.1.tar.xz
cd ffmpeg*
# 此处的参数一定要注意
# ./configure --enable-gpl --enable-libx264
./configure --enable-nonfree --enable-pic --enable-shared
make
make install
ffmpeg -version
错误消息
libavdevice.so.58: cannot open shared object file: No such file or directory
执行命令:
sudo ldconfig
ldd ffmpeg
发现连接不到库。
这是因为ffmpeg这个编译好的可执行文件执行时连接不到它的动态库导致。
在centos7/ubuntu中:
vim /etc/ld.so.conf
添加:
/usr/local/lib
这个路径是libavdevice.so.58等ffmpeg编译好的动态或静态库所在的路径。
然后再执行命令查看:
sudo ldconfig
ldd ffmpeg
原文链接:https://blog.csdn.net/weixin_43466192/article/details/121007960
错误消息
configure: error: no usable libodbc; please install unixodbc devel package or equivalent
configure: error: no usable libodbc; please install unixodbc devel package or equivalent
需要安装 unixodbc
sudo yum -y install unixODBC-devel