报错处理:Package libavdevice was not found in the pkg-config search
在执行这个命令时,
!pip install av pims
有了题目中的报错:
看看是什么系统:
是EulerOs v2r7.x86_64
看一下pkg-config的手册:
它是用来返回 metainfo about installed libraries.
在网上也找了下pkg-config的用处:
1.检查库的版本号。如果所需要的库的版本不满足要求,它会打印出错误信息,避免链接错误版本的库文件。
2.获得编译预处理参数,如宏定义,头文件的位置。
3.获得链接参数,如库及依赖的其它库的位置,文件名及其它一些连接参数。
4.自动加入所依赖的其它库的设置。
那么这个报错,就是说某个库(libavdevice)没有找到。
这个库,已经还有其他的一起的库,都是ffmpeg里提供的。
我看了一下之前的安装,有点小问题,
因为在configure阶段,指定的安装目标的目录里包含了~,原意是指用户目录,其实不然,实际上却是这个符号本身的名称建立了一个目录…
所以再重新配置一下
./configure --disable-x86asm --prefix=/home/ma-user/work/ffmpeg
编译安装后,可以看到
ffmpeg/lib/pkgconfig/libavutil.pc
ffmpeg/lib/pkgconfig/libavformat.pc
ffmpeg/lib/pkgconfig/libavfilter.pc
ffmpeg/lib/pkgconfig/libswresample.pc
ffmpeg/lib/pkgconfig/libavcodec.pc
ffmpeg/lib/pkgconfig/libswscale.pc
ffmpeg/lib/pkgconfig/libavdevice.pc
所以,将ffmpeg/lib/pkgconfig的路径加入到PKG_CONFIG_PATH这个环境变量里,然后再pip install就可以了!
- 点赞
- 收藏
- 关注作者
评论(0)