我已经在电脑上安装好了OpenNI以及并且成功链接kinect,而且OpenNI中有已经编译好的可执行文件,我执行过,可以正确运行 ,但是当我编译例子代码的时候,编译器报错:/usr/bin/ld: cannot find -lglut,请高手教一下我该如何处理。非常感谢。
我已经在电脑上安装好了OpenNI以及并且成功链接kinect,而且OpenNI中有已经编译好的可执行文件,我执行过,可以正确运行 ,但是当我编译例子代码的时候,编译器报错:/usr/bin/ld: cannot find -lglut,请高手教一下我该如何处理。非常感谢。
7 回答5.3k 阅读
3 回答2k 阅读✓ 已解决
4 回答4k 阅读
2 回答3.9k 阅读✓ 已解决
2 回答5.9k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
1 回答3.2k 阅读✓ 已解决
你确定你有百度过???
通常在软件编译时出现的usr/bin/ld: cannot find -lxxx的错误,主要的原因是库文件并没有导入的ld检索目录中。
解决方式:
1.确认库文件是否存在,比如-l123, 在/usr/lib, /usr/local/lib,或者其他自定义的lib下有无lib123.so, 如果只是存在lib123.so.1,
那么可以通过ln -sv lib123.so.1 lib123.so,建立一个连接重建lib123.so.
2.检查/etc/ld.so.conf中的库文件路径是否正确,如果库文件不是使用系统路径,/usr/lib, /usr/local/lib, 那么必须在文件中加入。
3.ldconfig 重建ld.so.cache文件,ld的库文件检索目录存放文件。尤其刚刚编译安装的软件,必须运行ldconfig,才能将新安装的
库文件导入ld.so.cache.
4.测试,gcc -l123 --verbose.