我遵循课程6.832,附录A的教科书中有关如何在Linux上本地安装Drake的说明。
所有安装步骤都已完成,似乎很成功。另外,我已经安装了所描述的所有先决条件。但是,当我在2.3节中运行测试时
(python -c 'import pydrake; print(pydrake.__file__)')
我遇到了几个错误。
它似乎正在尝试访问几个lib***.so
文件的旧版本而不是我的版本。
F.eks:当我在我的计算机上只有libgfortran.so.4时,Pydrake试图包含libgfortran.so.3。我试图通过使用ln -s
命令使终端接受“libgfortran.so.4”作为“libgfortran.so.3”来做一些“hackfixes”。但是,现在我遇到了另一个我不知道如何解决的错误。
它说:
回溯(最近一次调用最后一次):文件“”,第1行,在文件“/opt/drake/lib/python2.7/site-packages/pydrake/init.py”,第32行,来自。导入公共文件“/opt/drake/lib/python2.7/site-packages/pydrake/common/init.py”,第3行,来自._module_py import * ImportError:/opt/drake/lib/python2.7/ site-packages / pydrake / common /../../../../ libdrake.so:undefined symbol:_ZN6google8protobuf2io17CodedOutputStream28WriteVarint32FallbackToArrayEjPh
我该如何处理这个问题?
如果您按照第A.2.1节“逐字下载”二进制文件,那么您将下载https://drake-packages.csail.mit.edu/drake/continuous/drake-latest-xenial.tar.gz,即Ubuntu 16.04(Xenial)的软件包,它链接到libgfortran.so.3
。
由于你使用的是Ubuntu 18.04(Bionic),你需要下载https://drake-packages.csail.mit.edu/drake/continuous/drake-latest-bionic.tar.gz,它链接到libgfortran.so.4
。