使用CMake自动安装Python依赖项

时间:2014-11-04 13:57:58

标签: python cmake pip setuptools

我已经快速浏览了一下,但由于依赖关系和包以不同方式使用的术语,确定答案非常棘手。

我正在构建一个混合语言源(Fortran,一些C和Python),而Fortran调用的Python脚本依赖于PyPI中的networkx Python包。通常情况下,我只是安装了networkx,所以重建时对我来说不是问题。

然而,为了分发,我想要最好的方法:

  • 安装pip或同等产品(如果未安装)。
  • 如果合适,可以安装virtualenv并创建虚拟环境。
  • 使用networkx选项--user下载并安装pip

有标准方法吗?或者我应该将CMake依赖项与安装pip等的自定义命令一起使用?

1 个答案:

答案 0 :(得分:0)

这取决于。 for" manual"安装,你肯定应该检测是否安装了所有必需(构建)工具,如果他们不安装则发出错误。然后使用execute_process()运行pip以及您想要的任何内容。 从另一方面来说,如果你要为一些特定的Linux生成一个真正的包,你只需打包你的二进制文件和 require (通过特定包格式的相应语法,如*.rpm或{{1您的软件包依赖于在其他软件包上。所以,您可以确定它们将在您的软件包中安装(或者甚至在之前)。