ffmpeg遇到的问题

编译时遇到的问题:
/bin/sh: 1: ctags: not found
解决方案:
    sudo apt-get install ctags

遇到的问题
/usr/bin/ld: /home/fengxi/ffmpeg_build/lib//libavcodec.a(dds.o): undefined reference to symbol 'sqrtf@@GLIBC_2.0'
/lib/i386-linux-gnu/libm.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
解决方案
通常情况下,如果遇到这种情况,很明显是少了库。然后就要想到通过-l加库来解决问题。然后根据后面的报错情况来决定究竟是少了哪个库。


遇到的问题
执行:pkg-config --cflags libavformat libavcodec libswscale libavutil sdl
Package libavformat was not found in the pkg-config search path.
Perhaps you should add the directory containing `libavformat.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libavformat' found
解决方案:
export PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig"

pkg-config
pkg-config提供的功能:
1、检查库的版本号。如果所需要的库的版本不满足工作,它会打印出错误信息,避免链接错误版本的库文件。
2、获得编译预处理参数,如宏定义,头文件的位置。
3、获得链接参数,如库及依赖的其它库的位置,文件名及其它一些链接参数。
4、自动加入所依赖的其它库的设置。
这一切都是自动的,库文件安装在哪里都没有关系。

原理:
为了让pkg-config可以得到这些信息,要求库的提供者,提供一个.pc文件。这个文件一般放在/usr/lib/pkconfig或者/usr/local/lib/pkconfig里,当然也可以放在其它地方。为了让pkconfig能够找到你的.pc文件,你需要把.pc文件所在的路径,设置在环境变量PKG_CONFIG_PATH里面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值