2014-01-21 90 views
3

我一直在使用Python 3.3用Cython與Python 3.3

爲我尋找這是一個老問題了,這是我做過什麼:

helloworld.pyx

print("Hello world!") 

然後,在IPython的,我所做的:

import pyximport; pyximport.install() 
import helloworld 

它說:

ImportError: Building module helloworld failed: ["ValueError: ['path']\n"]

同樣的問題並沒有與Python 2.7

發生,我GOOGLE了這一點:https://github.com/cython/cython/wiki/64BitCythonExtensionsOnWindows ,並意識到,我必須安裝Windows SDK的Windows 7和.NET Framework 4,由於它帶有VC++ 2010年可再分發版,我沒有再次單獨安裝可再分發版。我以爲我已經準備好了一切,但導入錯誤仍然存​​在。

任何人都可以請幫我解決它嗎?

謝謝!

-Shawn

+1

你真的需要pyximport嗎?看起來,如果將擴展模塊作爲單獨的步驟構建,然後正常導入,錯誤消息可能會更直觀。 – dstromberg

回答

1

安裝Windows 7 SDK,然後打開CMD運行: 「C:\ Program Files文件\微軟的SDK \的Windows \ V7.1 \ BIN \ SetEnv.Cmd」/發行/ 64

然後運行: 蟒蛇setup.py install

1

我有同樣的問題,同樣的環境(WIN7 64位,蟒蛇-3.3.3 64位)。

我有

  1. 安裝了Windows 7 SDK作爲維基cython wiki如你沒有描述,
  2. 從這個python bug施加補丁(msvccompiler9_33.diff),
  3. 通過定義一個固定的上述補丁丟失變量here
  4. 已安裝MS Visual C++ Express 2010(似乎需要)
  5. 已更新t他在Windows 7 SDK中包含「Windows頭文件和庫」,「工具」,當然還有「Visual C++編譯器」MSVC++ 2010可再發行版。

現在我可以編譯並導入helloworld.py就好了。