drake - drake build 和“来自 pydrake.all 导入”的问题
问题描述
from pydrake.all import (MathematicalProgram, Polynomial)
从源代码构建 drake 后,我在使用时遇到问题(参考https://drake.mit.edu/python_bindings.html)。根据上一个链接,安装步骤是:
git clone https://github.com/RobotLocomotion/drake.git
mkdir drake-build
cd drake-build
cmake ../drake -DWITH_MOSEK=ON
make -j
cd drake-build
export PYTHONPATH=${PWD}/install/lib/python3.6/site-packages:${PYTHONPATH}
安装并运行后from pydrake.all import (MathematicalProgram, Polynomial)
出现以下错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "$HOME/drake-build/install/lib/python3.6/site-packages/pydrake/all.py", line 34, in <module>
from .perception import *
ImportError: ImportError: $HOME/drake-build/install/lib/python3.6/site-packages/pydrake/systems/framework.so: undefined symbol: _ZNK5drake7systems6SystemIdE19DoCheckValidContextERKNS0_11ContextBaseE
如果我使用每晚构建二进制文件(而不是从源代码构建),我不会收到此错误,但我在每晚构建二进制文件方面遇到了单独的问题,并且希望依赖从 git 构建。
使用 Ubuntu 18.04、Python3.6。
解决方案
您是否尝试设置 PYTHONPATH 环境变量?你可以做
cd drake-build
export PYTHONPATH=${PWD}/install/lib/python3.6/site-packages:${PYTHONPATH}
如https://drake.mit.edu/python_bindings.html#building-the-python-bindings中所述
推荐阅读
- javascript - node-react javascript应用程序-如何将特殊字符(符号)作为html中的输入
- java - java.io.ObjectInputStream 类型无法解析(eclipse)
- python - Spark 2.4.4 Avro Pyspark Shell 配置
- excel - VLOOKUP 未正确匹配
- python - 如何仅根据键中元组的一个元素对字典中的值求和?
- python - SQliteQueueDatabase 更新延迟?
- c - 将 NULL 添加到 char 双指针
- android - KITKAT 上的“onActivityResult”有时为空值的 Android 变量
- javascript - 在对话框关闭时取消异步状态更改
- azure-devops - 如何向代理添加新的动态可发现功能?