ubuntu安装ffmpeg问题ERROR: x265 not found using pkg-config解决方法

ubuntu下ffmpeg安装参考链接:

http://www.56cto.com/499

安装时在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}/include

Name: 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问题ERROR: x265 not found using pkg-config解决方法)