使用conda 4.3.21

时间:2017-05-26 09:35:08

标签: python-3.x anaconda ubuntu-16.04 conda openai-gym

我想玩OpenAI健身房的月球着陆器env。

为了运行这段代码,我需要安装Box2d,这就是我出现问题的地方。 我正在使用带有conda 4.3.21和python 3.6的ubuntu 16.04。 当我尝试运行环境时,我收到错误:ModuleNotFoundError:没有名为' _Box2D'

的模块

所以我尝试了直接安装pybox2d: https://github.com/pybox2d/pybox2d/blob/master/INSTALL.md 产生了相同的错误消息。

然后我尝试按照https://github.com/cbfinn/gps/issues/34

中列出的方式从GitHub安装
$git clone https://github.com/pybox2d/pybox2d pybox2d_dev
$cd pybox2d_dev
$python setup.py build 
$sudo python setup.py install

如果我运行它(在具有python 3的root环境或python 3的另一个新创建的环境中),我得到结果:

很多处理日志 处理Box2D-2.3.2-py2.7-linux-x86_64.egg 创建/usr/local/lib/python2.7/dist-packages/Box2D-2.3.2-py2.7-linux-x86_64.egg 将Box2D-2.3.2-py2.7-linux-x86_64.egg解压缩到/usr/local/lib/python2.7/dist-packages 将Box2D 2.3.2添加到easy-install.pth文件

已安装/usr/local/lib/python2.7/dist-packages/Box2D-2.3.2-py2.7-linux-x86_64.egg 处理Box2D的依赖关系== 2.3.2 Box2D的完成处理依赖关系== 2.3.2

因此pybox2d安装在ubuntu的标准python 2的lib中,尽管它处于python 3 conda环境中。

所以,我正在寻找使用conda 4.3.21

为python 3安装pybox2d软件包的方法

4 个答案:

答案 0 :(得分:1)

Box2D安装pip导致我在尝试导入here时遇到错误。正如该GitHub问题中所建议的,这是在Python 3.6上对我有用的东西:

conda install swig # needed to build Box2D in the pip install
pip install box2d-py # a repackaged version of pybox2d

答案 1 :(得分:1)

sudo apt-get install swig

pip install pybox2d

答案 2 :(得分:0)

您需要激活您的环境:

source activate my_env_name

然后提示更改为:

(my_env_name)

现在,使用pip安装,不使用sudo

pip install pybox2d

答案 3 :(得分:0)

嘿,这个问题看起来很老了,但是似乎没有人在任何地方都给出正确的答案,所以只写这个。

在Linux命令中遵循以下两行 $ sudo apt-get install build-essential python-dev swig python-pygame $ pip安装Box2D

许多人都想运行基于Box2D的体育馆,但这就像Mujoco系列体育馆envs一样必须自己安装。

许多人使用python 3.6,但是安装Box2D的最简单方法是 $ conda install -c kne pybox2d 不起作用,因为直到py3.5都维护了pybox2d

但是直接做 $ pip安装Box2D 无法解决问题。由于错误msg,该错误来自swig,但实际上并非如此。 $ sudo apt-get install build-essential python-dev swig python-pygame 这条线总能一口气解决所有问题。

我一直在基于Box2D envs进行研究,但是每次将其安装在新的env中时,仍然会感到困惑,所以对我来说也是这样

贡献:https://github.com/jonasschneider/box2d-py/blob/master/INSTALL.md

顺便说一句,不要忘记仔细检查它是否正确安装。 在linux命令中

$ python --version
python 3.6. sthsth
$ python
>>> import numpy as np
>>> import gym
>>> env = gym.make('BipedalWalker-v2')
# If it does not give you error, then it's done!