安装Assimulo和日晷 - 错误



我想使用Assimulo和Sundials来解决Python中的微分代数方程,因此我正在尝试将其安装在Ubuntu上。

对于日晷的安装,我按照安装说明进行操作,据我了解它运行良好。

% cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lib/sundials-3.1.1/  ~/opt/sundials/sundials-3.1.1
% make
% make install

然后我尝试使用命令安装 Assimulo pip3 install Assimulo ,但我收到一条错误消息。我还尝试按照安装 - Assimulo 3.0 文档中的说明下载安装文件并使用以下命令进行安装。它会导致相同的错误消息。

sudo python3 setup.py install --sundials-home=/usr/local/lib/sundials-3.1.1

这是我收到的错误消息:

  target build/src.linux-x86_64-3.6/assimulo/thirdparty/hairer/dopri5module.c does not exist:
   Assuming dopri5module.c was generated with "build_src --inplace" command.
error: 'assimulo/thirdparty/hairer/dopri5module.c' missing

出了什么问题,我该如何解决?任何帮助将不胜感激!

在 pip 安装 numpy 和 cython 之后,通过 pip install assimulo 在 macos 上安装时,我遇到了同样的错误。对我来说,使用conda env可以解决问题:

  • 创建 conda 环境:conda create -n your_name_goes_here
  • conda activate your_name_goes_here
  • conda install python=3.6(我注意到你也可以使用 3.7)
  • conda install -c conda-forge assimulo

我也有同样的错误消息。正如另一个答案中所建议的,您可以从Conda获得一个编译包。但是如果你想自己从源代码编译,在我看来,PyPI 源代码压缩包不包含所有需要的文件。至少缺少一些*.pyf文件。所以,我改用了SVN存储库:

svn checkout https://svn.jmodelica.org/assimulo/tags/Assimulo-3.0/ assimulo

通过编译这个源代码树,我设法通过了您遇到的原始错误,但是我现在遇到了另一个我还不知道如何解决的构建错误:

ssimulo/solvers/sundials.c: In function '__pyx_f_8assimulo_7solvers_8sundials_5CVode_initialize_cvode':
assimulo/solvers/sundials.c:33274:31: error: too many arguments to function 'CVodeCreate'
     __pyx_v_self->cvode_mem = CVodeCreate(__pyx_t_3, __pyx_t_4);

相关内容

  • 没有找到相关文章

最新更新