錯誤:找不到vcvarsall.bat

我試圖安裝Python軟件包dulwichpython

pip install dulwich

可是我收到了一個神祕的錯誤消息: ide

error: Unable to find vcvarsall.bat

若是我嘗試手動安裝軟件包,也會發生相同的狀況: 工具

> python setup.py install
running build_ext
building 'dulwich._objects' extension
error: Unable to find vcvarsall.bat

#1樓

我只是遇到了一樣的問題,因此我在這裏講述個人故事,但願它能夠幫助遇到一樣問題的其餘人,併爲他們節省幾個小時的時間: ui

我在Windows 7盒子中有mingw(g ++(GCC)4.6.1)和python 2.7.3,我正在嘗試安裝PyCrypto。 google

運行setup.py install時,全部錯誤均始於此錯誤: spa

error: Unable to find vcvarsall.bat

經過將mingw指定爲首選編譯器,能夠輕鬆地在搜索錯誤以後解決: code

setup.py install build --compiler=mingw32

問題是而後我獲得了另外一個錯誤: xml

configure: error: cannot run C compiled programs.

事實證實,個人防病毒軟件阻止了新編譯的.exe的執行。 我只是禁用了防病毒「居民防禦罩」,而後轉到下一個錯誤: ip

cc1.exe: error: unrecognized command line option '-mno-cygwin' 
error: command 'gcc' failed with exit status 1

解決了它:「要麼安裝稍舊版本的MinGW,要麼在Python目錄中編輯distutils \\ cygwinccompiler.py,以刪除-mno-cygwin的全部實例。」 (從這裏開始get

如今,我終於能夠開始工做了。


#2樓

更新 :評論指出此處的說明可能很危險。 考慮使用Visual C ++ 2008 Express版或專用於Python的Microsoft Visual C ++編譯器詳細信息 ),而不要使用下面的原始答案。 原始錯誤消息表示未安裝所需的Visual C ++版本。


對於Windows安裝:

在運行setup.py進行軟件包安裝時,Python 2.7搜索已安裝的Visual Studio2008。經過在調用setup.py以前在VS90COMNTOOLS環境變量中設置正確的路徑,能夠誘使Python使用更新的Visual Studio。

根據安裝的Visual Studio版本執行如下命令:

  • Visual Studio 2010(VS10): SET VS90COMNTOOLS=%VS100COMNTOOLS%
  • Visual Studio 2012(VS11): SET VS90COMNTOOLS=%VS110COMNTOOLS%
  • Visual Studio 2013(VS12): SET VS90COMNTOOLS=%VS120COMNTOOLS%
  • Visual Studio 2015(VS14): SET VS90COMNTOOLS=%VS140COMNTOOLS%

警告:以下所述,若是您嘗試編譯python模塊,此答案不太可能起做用。

有關詳細信息,請參見在Windows上爲Python 2.7構建lxml


#3樓

我有python 2.73和Windows 7。對我有用的解決方案是:

  1. 在環境變量中添加了mingw32的bin目錄:用C:\\programs\\mingw\\bin;附加PATH C:\\programs\\mingw\\bin;
  2. 建立distutils.cfg位於C:\\Python27\\Lib\\distutils\\distutils.cfg含有:

    [build] compiler=mingw32

要處理MinGW再也不識別-mno-cygwin標誌的方法,請刪除C:\\ Python27 \\ Lib \\ distutils \\ cygwincompiler.py第322至326行中的標誌,所以以下所示:

self.set_executables(compiler='gcc -O -Wall',
                         compiler_so='gcc -mdll -O -Wall',
                         compiler_cxx='g++ -O -Wall',
                         linker_exe='gcc',
                         linker_so='%s %s %s'
                                    % (self.linker_dll, shared_option,
                                       entry_point))

#4樓

也許有人會感興趣,如下對py2exe軟件包有用。 (我有Windows 7 64位和便攜式python 2.7,帶有適用於Windows 7和.NET Framework 4的Windows SDK的Visual Studio 2005 Express)

set VS90COMNTOOLS=%VS80COMNTOOLS%

而後:

python.exe setup.py install

#5樓

若是您要在安裝Visual Studio的Windows機器上安裝pyodbc, 另外一個選擇是使用二進制發行版手動安裝pyodbc。

若是您在使用的計算機上沒有管理員特權並試圖設置virtualenv ,則此功能特別有用。

腳步:

  1. 此處下載最新的Windows安裝程序(pyodbc-XXXwin-Y-py2.7.exe)
  2. 使用7-Zip(或WinRAR或其餘工具)打開安裝程序可執行文件
  3. 解壓縮pyodbc.pyd和pyodbc-XXX-py2.7.egg-info並將它們放置在[python installation directory or virtualenv]\\Lib\\site-packages
  4. 沒有步驟4 :)
相關文章
相關標籤/搜索