在Linux环境下(交叉)编译程序或者库源码时,常常会出现以下错误讯息:
“cannot find -lxxx”
发生以上错误的原因很大可能是系统没有安装相应的库或者是编译程序或者库源码时没有正确链接到合适的库
解决方法:
1.用gcc编译器编译时发生以上错误的解决方式(直接安装相应的库)
(1)首先 -lxxx 中的 “xxx” 代表库的大致类型名,在ubuntu(Linux虚拟机系统)下打开终端,输入“sudo apt-cache search xxx”,
然后终端就会打印出所有关于该xxx库的具体库名,一般为libxxx-dev;
(2)输入 “sudo apt-get install libxxx-dev” 安装该库;
(3)重新编译你的程序,问题解决。
2.用交叉编译器编译时发生以上错误的解决方式(交叉编译库源码)
(1)“sudo apt-cache search xxx” 找到具体你要安装的库名;
(2)“sudo apt-get source libxxx-dev” 下载库源码到当前目录下,注意,在执行该命令之前,最好先新建一个目录,
然后进入你新建的目录下再执行下载库源码的命令;