如何安装PyGSL? (Windows 7,64位,Python 2.7,GSL 1.15)

时间:2013-05-15 21:00:15

标签: gcc windows-7 python-2.7 gsl pygsl

我正在尝试在我的计算机(64位Windows 7)上安装PyGSL,并安装了Python 2.7和GSL 1.15。我几乎陷入困境,我希望得到一些额外的帮助。 GSL安装正常,但它的包装是问题所在。出于某种原因,我无法构建pygsl。显然gcc是问题(在另一台Windows机器上遇到同样的问题)。或者可能是pygsl似乎使用名为AMD64的文件,而我的计算机是x86。我想用pygsl的windows二进制文件,但它只存在于python 2.5,我的项目需要2.6或更高。我已经将两个Windows二进制文件用于GSL并从源代码构建它,但无论如何我都会遇到同样的问题。我尝试将GSL中的dll复制到pygsl但是没有用。一些论坛提到了一个名为gsl.dll的文件,但我似乎无法找到它。我也试过使用Cygwin并用minGW32编译无济于事。

我跑了

cmds:

python setup.py install
python setup.py build
python setup.py build_ext -i
python setup.py build --compiler=mingw32

任何想法?感谢。

干杯, Bereket

在Cygwin中获得与在windows cmd提示符中相同的消息。错误讯息:

$ /cygdrive/c/Python27/python.exe setup.py build_ext -i
numpy
Forcing DISTUTILS_USE_SDK=1
Building testing ufuncs!
running build_ext
building 'errno' extension
C compiler: gcc -g -DDEBUG -DMS_WIN64 -mno-cygwin -O0 -Wall -Wstrict-prototypes

compile options: '-DSWIG_COBJECT_TYPES=1 -DGSL_RANGE_CHECK=1 -DDEBUG=1 -DNUMERIC=0 -DPYGSL_GSL_MAJOR_VERSION=1 -DPYGSL_GSL_MINOR_VERSION=15 -UNDEBUG -IC:\Users\Bereket\gsl-1.15\include -IInclude -I. -IC:\Python27\lib\site-packages\numpy\core\include -IC:\Python27\include -IC:\Python27\PC -c'
gcc -g -DDEBUG -DMS_WIN64 -mno-cygwin -O0 -Wall -Wstrict-prototypes -DSWIG_COBJECT_TYPES=1 -DGSL_RANGE_CHECK=1 -DDEBUG=1 -DNUMERIC=0 -DPYGSL_GSL_MAJOR_VERSION=1 -DPYGSL_GSL_MINOR_VERSION=15 -UNDEBUG -IC:\Users\Bereket\gsl-1.15\include -IInclude -I. -IC:\Python27\lib\site-packages\numpy\core\include -IC:\Python27\include -IC:\Python27\PC -c src/init/errorno.c -o build\temp.win-amd64-2.7\Release\src\init\errorno.o
Found executable C:\cygwin\bin\gcc.exe
gcc -g -mno-cygwin -shared build\temp.win-amd64-2.7\Release\src\init\errorno.o -LC:\Users\Bereket\gsl-1.15\lib -LC:\Python27\libs -LC:\Python27\PCbuild\amd64 -lgsl -lgslcblas -lm -lpython27 -lmsvcr90 -o C:\Python27\Lib\pygsl-0.9.5\pygsl\errno.pyd
build\temp.win-amd64-2.7\Release\src\init\errorno.o: In function `add_errno':
/cygdrive/c/Python27/Lib/pygsl-0.9.5/src/init/errorno.c:14: undefined reference to `__imp__PyInt_FromLong'
/cygdrive/c/Python27/Lib/pygsl-0.9.5/src/init/errorno.c:20: undefined reference to `__imp__PyDict_SetItemString'
build\temp.win-amd64-2.7\Release\src\init\errorno.o: In function `initerrno':
/cygdrive/c/Python27/Lib/pygsl-0.9.5/src/init/errorno.c:37: undefined reference to `__imp__Py_InitModule4_64'
/cygdrive/c/Python27/Lib/pygsl-0.9.5/src/init/errorno.c:40: undefined reference to `__imp__PyModule_GetDict'
collect2: ld returned 1 exit status
error: Command "gcc -g -mno-cygwin -shared build\temp.win-amd64-2.7\Release\src\init\errorno.o -LC:\Users\Bereket\gsl-1.15\lib -LC:\Python27\libs -LC:\Python27\PCbuild\amd64 -lgsl -lgslcblas -lm -lpython27 -lmsvcr90 -o C:\Python27\Lib\pygsl-0.9.5\pygsl\errno.pyd" failed with exit status 1

2 个答案:

答案 0 :(得分:1)

我很确定我的GSL安装与Cygwin失败/有未解决的依赖关系。我现在正尝试使用visual studio 2010进行安装。以下是一些很好的网站:

Instructions

Alt Method

答案 1 :(得分:0)

为Windows安装Python 2.7编译器是一个很好的起点 http://www.microsoft.com/en-gb/download/details.aspx?id=44266

运行python setup.py build_ext --inplace对我有用。 如果这不起作用,请告诉我。您可能需要添加环境变量。

你的Python 32还是64?要检查打开Python并执行

import sys
sys.versions