ubuntu下ffmpeg安装参考链接:
安装时在https://bitbucket.org/multicoreware/x265/downloads/ 下载了最新的ffmpeg库。
当执行./configure时遇到ERROR: x265 not found using pkg-config
PATH="$HOME/bin:$PATH" PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure \ --prefix="$HOME/ffmpeg_build" \ --pkg-config-flags="--static" \ --extra-cflags="-I$HOME/ffmpeg_build/include" \ --extra-ldflags="-L$HOME/ffmpeg_build/lib" \ --bindir="$HOME/bin" \ --enable-gpl \ --enable-libass \ --enable-libfdk-aac \ --enable-libfreetype \ --enable-libmp3lame \ --enable-libopus \ --enable-libtheora \ --enable-libvorbis \ --enable-libvpx \ --enable-libx264 \ --enable-libx265 \ --enable-nonfree
解决方法;
- 查看 ./ffbuild/config.log文件,此文件是./configure生成的log文件,直接拉到最后可以看到出问题的原因,我遇到的问题如下:
$(HOME)/lib/libx265.a(threading.cpp.o): In function `x265::Thread::start()':
threading.cpp:(.text+0x35): undefined reference to `pthread_create'
$(HOME)/ffmpeg_build/lib/libx265.a(threading.cpp.o): In function `x265::Thread::stop()':
threading.cpp:(.text+0x63): undefined reference to `pthread_join'
collect2: error: ld returned 1 exit status
ERROR: x265 not found using pkg-config
- 在libx265文件夹中找到问题文件既 threading.cpp
//在threading.cpp中包含pthread.h : #include ".h"
- 然后继续执行 ./configure ... && make && make isntall 完成libx265的安装
- 完成安装后 在 $(HOME)/ffmpeg_build/lib/pkg-config文件夹下找到 XXX.pc文件并打开,在Libs.private: -lstdc++ -lm -lrt -ldl后面添加 -lpthread 包含pthread库。
prefix=$(HOME)i/ffmpeg_build
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/includeName: x265
Description: H.265/HEVC video encoder
Version: 2.9
Libs: -L${libdir} -lx265
Libs.private: -lstdc++ -lm -lrt -ldl -lpthread
Cflags: -I${includedir}
- 继续执行既可完成ffmpeg的安装。
只是一个例子,建议查看log,根据log解决bug。
本文详细记录了在Ubuntu系统中安装FFmpeg的过程,特别是解决了在配置阶段遇到的x265库未找到的错误。通过修改threading.cpp文件和在pkg-config文件中添加-lpthread,成功完成了x265库的安装。

2769

被折叠的 条评论
为什么被折叠?



