前言
在Linux下安装软件,还是容易出现各种问题,而且是用命令行操作的,往往会出现长长的报错。这时候就需要非常强大的阅读报错的能力。
总而言之,就是缺啥装啥。
open OL库
出现报错如下:
$ python
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libGLEW.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
Python 3.8.13 (default, Mar 28 2022, 11:38:47)
[GCC 7.5.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import mujoco_py
running build_ext
building 'mujoco_py.cymj' extension
gcc -pthread -B /home/user/miniconda3/envs/py38/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py -I/home/user/.mujoco/mujoco200/include -I/home/user/miniconda3/envs/py38/lib/python3.8/site-packages/numpy/core/include -I/home/user/miniconda3/envs/py38/include/python3.8 -c /home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py/cymj.c -o /home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py/generated/_pyxbld_2.0.2.8_38_linuxcpuextensionbuilder/temp.linux-x86_64-3.8/home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py/cymj.o -fopenmp -w
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libGLEW.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libGLEW.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libGLEW.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
gcc -pthread -B /home/user/miniconda3/envs/py38/compiler_compat -Wl,--sysroot=/ -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -fPIC -I/home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py -I/home/user/.mujoco/mujoco200/include -I/home/user/miniconda3/envs/py38/lib/python3.8/site-packages/numpy/core/include -I/home/user/miniconda3/envs/py38/include/python3.8 -c /home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py/gl/osmesashim.c -o /home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py/generated/_pyxbld_2.0.2.8_38_linuxcpuextensionbuilder/temp.linux-x86_64-3.8/home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py/gl/osmesashim.o -fopenmp -w
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libGLEW.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
ERROR: ld.so: object '/usr/lib/x86_64-linux-gnu/libGLEW.so' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
/home/user/miniconda3/envs/py38/lib/python3.8/site-packages/mujoco_py/gl/osmesashim.c:1:10: fatal error: GL/osmesa.h: No such file or directory
1 | #include <GL/osmesa.h>
| ^~~~~~~~~~~~~
compilation terminated.
Traceback (most recent call last):
File "/home/user/miniconda3/envs/py38/lib/python3.8/distutils/unixccompiler.py", line 117, in _compile
self.spawn(compiler_so + cc_args + [src, '-o', obj] +
File "/home/user/miniconda3/envs/py38/lib/python3.8/distutils/ccompiler.py", line 910, in spawn
spawn(cmd, dry_run=self.dry_run)
File "/home/user/miniconda3/envs/py38/lib/python3.8/distutils/spawn.py", line 36, in spawn
_spawn_posix(cmd, search_path, dry_run=dry_run)
File "/home/user/miniconda3/envs/py38/lib/python3.8/distutils/spawn.py", line 157, in _spawn_posix
raise DistutilsExecError(
distutils.errors.DistutilsExecError: command 'gcc' failed with exit status 1
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/user/