0

FTR:这是我对 Drake Slack 对话的“公开档案”。


2019 年 9 月 17 日下午 2:44

(py36_pyro) gizatt@ProblemChild:~$ python
Python 3.6.9 |Anaconda, Inc.| (default, Jul 30 2019, 19:07:31)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import pydrake
>>> import pydrake.geometry
terminate called after throwing an instance of 'pybind11::error_already_set'
what():  SystemError: <built-in method __contains__ of dict object at 0x7f266bd23438> returned a result with an error set
Aborted (core dumped)

任何想法从哪里开始?它只在导入时发生pydrake.geometry,我可以先导入pydrake、、、等,这些都可以正常工作pydrake.commonpydrake.multibodyPython 3.6 / Ubuntu 18.04 / 当前大师

15 条回复

eric.cousineau 7 个月前

Python 3.6.9 |Anaconda, Inc.| (default, Jul 30 2019, 19:07:31)

我认为这Anaconda部分可能是可疑的?(请参阅此处顶部的警告:https ://drake.mit.edu/python_bindings.html

eric.cousineau 7 个月前 以前有用 吗?

eric.cousineau 7 个月前 你可以尝试通过/usr/bin/python3而不是 Anaconda 来运行它吗?

gizatt 7个月前 我通过conda稳定使用了一段时间,这是新的

eric.cousineau 7 个月前 嗯...你是用 Conda 自己构建的,还是下载预构建的?你知道它最后一次工作是什么时候吗?

eric.cousineau 7 个月前 (更具体地说,master 的 SHA1?)

gizatt 7 个月前, 我使用 conda python 构建它(我在那里运行的是同一个),尽管没有 conda 环境来源——这在一段时间内工作正常。破坏它的不是德雷克的升级——我怀疑我这边的一些配置调整揭示了一些东西。当我在德雷克上时它坏了……也许是一周大?我升级了,但不知道我从什么升级(已编辑)

gizatt 7 个月前 抱歉,它是/usr/bin/python3.6在没有 conda 环境来源的情况下构建的。然后我获取一个 conda env 并导入 drake 并将它与 conda python 一起使用,直到现在都很棒

eric.cousineau 7 个月前 嗯...不知道如何在这里提供帮助...您是否以兼容conda的方式使用?pip您可以只做 purevirtualenv并完全避免 conda 吗?(我们正在使用pyro和其他东西pip,它工作得很好。)(编辑)

eric.cousineau 7 个月前python3 --version另外,在 Ubuntu(我的机器上是 3.6.8)和 Conda(你的机器上是 3.6.9)上 可能有区别吗?(已编辑)

gizatt 7 个月前 我在 conda 中对版本进行了降级,现在版本至少是一致的

gizatt 7 个月前 我一次移动了几件东西,所以我还不确定罪魁祸首,但我已经确定,如果我尝试使用我的主目录pydrake.geometry中的任何一个 python3.6 版本导入,我就会遇到问题,但如果我从其他任何地方做,那很好。(已编辑)

gizatt 7 个月前 我只是呃...把这归结为一些导入路径 bs 并称之为解决?

eric.cousineau 7 个月前 SGTM!虽然这听起来像是一个神奇的路径阴影问题,就像pydrake你的主目录中有一个文件夹?(已编辑)

eric.cousineau 7 个月前 (此外,一些软件包订阅了从安装*.pth文件的邪恶setup.py或什么东西摆弄sys.path......所以也许这取决于解释器从哪里开始?)

4

1 回答 1

0

这里的直接修复是降级 Conda 的 Python 版本以匹配pydrakes 编译版本,并确保没有其他解释器被获取。

目前(2020/04/25),pydrake没有正式编译,也没有用conda/测试过anaconda,所以可能存在未知问题。如果可能,我们(Drake 开发人员)建议不要使用它,但如果您这样做,目前您将自行承担风险。

于 2020-04-25T17:16:23.153 回答