[问题描述]
在编译 VTK 时, 报错: No rule to make target '/usr/lib/x86_64-linux-gnu/libGL.so'
[参考原文]
https://github.com/RobotLocomotion/drake/issues/2087
[原因]
/usr/lib/x86_64-Linux-gnu/libGL.so 这个软链接指向 / usr/lib/x86_64-Linux-gnu/mesa/libGL.so, 进一步指向 / usr/lib/x86_64-Linux-gnu/mesa/libGL.so.1.2.0, 而 / usr/lib/x86_64-Linux-gnu/mesa/libGL.so.1.2.0 这个文件并不存在
通过命令查找
$ sudo find / -iname "*libGL.so.1.2.0*"
发现 / snap/cloudcompare/200/user/lib/x86_64-Linux-gnu/mesa/libGL.so.1 和 / snap/cloudcompare/200/user/lib/x86_64-Linux-gnu/mesa/libGL.so.1.2.0 两个文件, 猜测是丢失的链接库, 加上链接之后, 问题解决.
[解决方案]
- $ sudo rm /usr/lib/x86_64-Linux-gnu/mesa/libGL.so
- $ sudo ln -s /snap/cloudcompare/200/user/lib/x86_64-Linux-gnu/mesa/libGL.so.1.2.0 /usr/lib/x86_64-Linux-gnu/mesa/libGL.so
来源: http://www.bubuko.com/infodetail-3462028.html