Я пытался установить Cython для Python 2.7 в своей системе Windows 7. В частности, я предпочитаю все в 64 бита. (В случае, если вам интересно, мне нужен Cython, потому что Cython - один из компонентов, которые мне нужны для другого пакета для некоторого специализированного численного анализа. А x64 потенциально является преимуществом для хранения больших наборов данных.)
Итак, я скачал x64 Python 2.7 с официального сайта. Получил Cython от Кристофа Голке. Конечно, версия amd64 для Python 2.7. Перед установкой я добавил Python 2.7 в реестр с файлом .reg
, найденным в Ответ Джо Д.Ф. здесь. Впоследствии я установил компилятор Visual C ++ с здесь ( Я не думаю, что это работает) и здесь ( а вот этот должен). На данный момент у меня есть в моем C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin
каталоге все vcvars32.bat
, vcvars64.bat
, vcvars86_amd64.bat
, vcvarsx86_ia64.bat
. Я запустил vcvars64.bat
, и сообщения об ошибке не было.
Впоследствии я перешел на эту страницу, чтобы создать тестовый файл "hello world".
Затем я получил эту ошибку.
...\Tests>python setup.py build_ext --inplace
running build_ext
building 'hello' extension
error: Unable to find vcvarsall.bat
Поэтому я подумал: ну, Cython не может найти этот файл, потому что он не существует. (Я обыскал его на всем своем жестком диске.) Я скопировал vcvars64.bat
с ...\VC\bin
на \VC
и изменил имя на vcvarsall.bat
. Теперь ошибка vcvarsall исчезла. И ... естественно, возникает новая ошибка.
...\Tests>python setup.py build_ext --inplace
running build_ext
building 'hello' extension
C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\amd64\cl.exe /c /nolog
o /Ox /MD /W3 /GS- /DNDEBUG -IC:\Python27\include -IC:\Python27\PC /Tchello.c /F
obuild\temp.win-amd64-2.7\Release\hello.obj
hello.c
C:\Python27\include\pyconfig.h(227) : fatal error C1083: Cannot open include fil
e: 'basetsd.h': No such file or directory
error: command '"C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\BIN\amd64
\cl.exe"' failed with exit status 2
Теперь я не знаю, что делать дальше. Что я должен делать? Ваша помощь очень ценится.
(Для ясности я попытался установить компилятор на Mingw32. Но есть и другие ошибки. Сейчас я сосредоточен на том, чтобы VC работал.)
РЕДАКТИРОВАТЬ: Я попытался использовать CMD среды сборки SDK, следуя инструкциям на этой странице. Я получил ту же ошибку.
VS90COMNTOOLS
. Cython фактически сначала ищет каталог VC, прежде чем перейти кVS90COMNTOOLS
. И, по крайней мере, на начальных этапах сборки Cython может найти компоненты VC, как описано в тексте вопроса. Однако, спасибо. - person Argyll   schedule 16.05.2014basetsd.h
, ниwindows.h
(другой файл заголовка, упомянутый на странице построения программы C ++. msdn.microsoft.com/en-us/library/z7kx322x.aspx) Интересно, а почему - person Argyll   schedule 21.05.2014