ubuntu的kylin16版本安装OpenAI gym

参考链接:

Vmware Ubuntu kylin NAT模式上网设置_y4ung-CSDN博客

ubuntu16.04纯净版-安装Python3.8.1/升级pip - 王钰 - 博客园 (cnblogs.com)

ubuntu python3 pip报错SyntaxError: invalid syntax_海棠花未眠的博客-CSDN博客

虚拟机安装不赘述了,使用版本为ubuntukylin-16.04-desktop-amd64(建议使用ubuntu而不是centos)。

安装过程很容易,按着顺序依次确定即可,安装完成之后需要进行网络配置,让我们的虚拟机链接上网络。

一、配置网络

1.打开VMware workstation ,菜单栏选项–>编辑–>虚拟网络编辑器,将VMnet8设置为NAT模式,启动DHCP(DHCP就是用来动态分配虚拟机IP的,不启用也没有关系), 如图:

1

2.在主机上开启NAT服务和DHCP服务

win+r –> services.msc

2

3.然后,打开VMware workstation ,菜单栏选项–>虚拟机–>设置为NAT模式

3

4.更改适配器设置,将可以上网的网络设置为共享,共享给虚拟机的VMnet8(不需要勾下面的勾):

4

二、配置Python3环境

ubuntu的kylin16系统自己带了Python2.7和Python3.5环境,我需要使用Python3.8+。

1.配置依赖环境,如果不进行这步可能会出现一些问题。

5

2.去官网下载Python-3.8.1.tar.xz

6

3.解压下载的包

1
tar -xvJf  Python-3.8.1.tar.xz

7

4.进入解压后的目录

1
cd Python-3.8.1/

5.安装依赖(非必要,可跳过此步骤,如在6步出错在执行本步骤)

执行下列命令安装依赖过程中,如有提示,一律y。

1
2
3
4
sudo apt-get install python-dev
sudo apt-get install libffi-dev
sudo apt-get install libssl-dev
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev

6.执行安装

1
2
./configure prefix=/usr/local/python3
sudo make && sudo make install

7.修改软连接(配置全局变量)

将原来的链接备份。

1
sudo mv /usr/bin/python /usr/bin/python.bak

添加python3的软链接。

1
sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python

测试是否安装成功了。

1
python -V

8

8.安装/升级pip

这句是给(python2.7安装pip)

1
sudo apt-get install python-pip

给python3安装pip。

1
sudo apt-get install python3-pip

执行升级。

1
2
sudo pip install --upgrade pip
sudo pip3 install --upgrade pip

升级pip时出现了问题:

1
2
3
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main

修改一下pip配置

1
sudo vi /usr/bin/pip

改成

1
2
3
4
5
6
7
8
9
#原PIP配置文件
from pip import main
if __name__ == '__main__':
sys.exit(main())

#修改为
from pip import __main__ //修改
if __name__ == '__main__':
sys.exit(__main__._main())//修改

9.pip3安装包时出现问题

1
2
3
4
5
6
7
8
9
Traceback (most recent call last):
File "/usr/bin/pip3", line 11, in <module>
sys.exit(main())
File "/home/fulequn/.local/lib/python3.5/site-packages/pip/__init__.py", line 11, in main
from pip._internal.utils.entrypoints import _wrapper
File "/home/fulequn/.local/lib/python3.5/site-packages/pip/_internal/utils/entrypoints.py", line 4, in <module>
from pip._internal.cli.main import main
File "/home/fulequn/.local/lib/python3.5/site-packages/pip/_internal/cli/main.py", line 57
sys.stderr.write(f"ERROR: {exc}")

原因

查了很多,大多数老外的说法是,高版本的pip不再支持python3.5

解决

移除pip的相关文件

1
sudo apt autoremove

下载pip的安装文件

1
url -O https://bootstrap.pypa.io/pip/3.5/get-pip.py

执行安装文件

1
/usr/bin/python3 get-pip.py

这句是给(python2.7安装pip)

1
sudo apt-get install python-pip

给python3安装pip。

1
sudo apt-get install python3-pip

pip升级

1
2
sudo pip install --upgrade pip
sudo pip3 install --upgrade pip

这个部分我卸载之后,出现了pip不存在的错误。之后重新安装,再升级就解决了。

三、安装OpenAI gym

输入下面语句,安装gym

1
pip install gym -i https://pypi.tuna.tsinghua.edu.cn/simple

1.出现下面错误

1
ModuleNotFoundError: No module named '_ctypes'

解决:

1
sudo apt install libffi-dev -y

2.出现错误

1
ERROR: No matching distribution found for gym[all]

未解决

3.出现错误

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
    ERROR: Command errored out with exit status 1:
command: /usr/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/setup.py'"'"'; __file__='"'"'/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-cqfhnl92/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/fulequn/.local/include/python3.8/mujoco-py
cwd: /tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/
Complete output (58 lines):
running install
/home/fulequn/.local/lib/python3.8/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
warnings.warn(
running build

You appear to be missing MuJoCo. We expected to find the file here: /home/fulequn/.mujoco/mjpro150

This package only provides python bindings, the library must be installed separately.

Please follow the instructions on the README to install MuJoCo

https://github.com/openai/mujoco-py#install-mujoco

Which can be downloaded from the website

https://www.roboti.us/index.html

Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/setup.py", line 32, in <module>
setup(
File "/home/fulequn/.local/lib/python3.8/site-packages/setuptools/__init__.py", line 153, in setup
return distutils.core.setup(**attrs)
File "/usr/local/python3/lib/python3.8/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/local/python3/lib/python3.8/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File "/usr/local/python3/lib/python3.8/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/home/fulequn/.local/lib/python3.8/site-packages/setuptools/command/install.py", line 68, in run
return orig.install.run(self)
File "/usr/local/python3/lib/python3.8/distutils/command/install.py", line 545, in run
self.run_command('build')
File "/usr/local/python3/lib/python3.8/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/local/python3/lib/python3.8/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/setup.py", line 28, in run
import mujoco_py # noqa: force build
File "/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/mujoco_py/__init__.py", line 3, in <module>
from mujoco_py.builder import cymj, ignore_mujoco_warnings, functions, MujocoException
File "/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/mujoco_py/builder.py", line 502, in <module>
mjpro_path, key_path = discover_mujoco()
File "/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/mujoco_py/utils.py", line 93, in discover_mujoco
raise Exception(message)
Exception:
You appear to be missing MuJoCo. We expected to find the file here: /home/fulequn/.mujoco/mjpro150

This package only provides python bindings, the library must be installed separately.

Please follow the instructions on the README to install MuJoCo

https://github.com/openai/mujoco-py#install-mujoco

Which can be downloaded from the website

https://www.roboti.us/index.html

----------------------------------------
ERROR: Command errored out with exit status 1: /usr/bin/python -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/setup.py'"'"'; __file__='"'"'/tmp/pip-install-n_xs68fh/mujoco-py_a3733903fc69448b995da4444e4157b9/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' install --record /tmp/pip-record-cqfhnl92/install-record.txt --single-version-externally-managed --user --prefix= --compile --install-headers /home/fulequn/.local/include/python3.8/mujoco-py Check the logs for full command output.

未解决


ubuntu的kylin16版本安装OpenAI gym
https://fulequn.github.io/2021/11/Article202111293/
作者
Fulequn
发布于
2021年11月29日
许可协议