我想将 GSL 文件包含在我想使用“conda build packagename”构建的 cython 程序中。要将 GNU GSL 文件与 Python 连接,我使用 cython_gsl 包 ( https://github.com/twiecki/CythonGSL )。但是,这需要在每个操作系统上安装 GSL 文件。查看 cython_gsl 的 init.py 文件,应传递给 .pyx 文件的文件夹是:
Windows:c:\Program Files\GnuWin32\include
OSX/Linux:os.popen('gsl-config --cflags').read()[2:-1]
我可以在 shell/批处理文件中包含下载和安装 GSL header ,以便通过“conda install packagename”自动完成吗?
感谢您的帮助。
此外,如果不可能,他们是否有一个 python 模块,可以下载 GSL 文件并允许轻松连接 cython 构建?
最佳答案
我不认为有一个可以下载 GSL 文件的 Python 模块。 在 GNU/Linux 中,您通常可以使用系统包管理器来安装带有 devel header 的 gsl 库。例如,在 openSUSE 中,
$ sudo zypper install gsl-devel
你就完成了。您可以安装 CythonGSL,它会识别 gsl 并使用它。 (我认为 OSX 中也是类似的。)
在 Windows 中,涉及的范围更广一些。 CythonGSL 将引用 LIB_GSL
环境变量来获取 gsl 的位置。 (如果不存在,那么它将使用硬编码的C:\Program Files\GnuWin32\include
)。
基本上,您需要做的是从 https://code.google.com/p/oscats/downloads/list 下载带有开发 header 的 gsl ,解压它,使用 gsl 安装位置创建一个环境变量 LIB_GSL
,然后将安装的 bin
子目录添加到您的 PATH
环境中多变的。
我有一篇博文,其中包含详细说明:http://blog.joonro.net/en/posts/installing-gsl-and-cythongsl-in-windows.html
关于python - 在 Windows、OSX 和 LINUX 中安装 GSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26866761/