2016-07-22 39 views
6

我試圖根據the theano installation guide來正確安裝g ++安裝程序。我以前有theano與python唯一的實施工作。我在python 3.4上使用他們的git repo的theano的最新版本。我試過使用theano建議的TDM-GCC-64方法以及MinGW,並且都導致完全相同的錯誤。 (複製儘量可讀)在Windows 7上輸入Theano時出現g ++錯誤

Problem occurred during compilation with the command line below: 
C:\MinGW\bin\g++.exe -shared -g -march=skylake -mmmx -mno-3dnow -msse -msse2 -msse3 
-mssse3 -mno-sse4a -mcx16 -msahf -mmovbe -maes -mno-sha -mpclmul -mpopcnt 
-mabm -mno-lwp -mfma -mno-fma4 -mno-xop -mbmi -mbmi2 -mno-tbm -mavx 
-mavx2 -msse4.2 -msse4.1 -mlzcnt -mrtm -mhle -mrdrnd -mf16c -mfsgsbase 
-mrdseed -mprfchw -madx -mfxsr -mxsave -mxsaveopt -mno-avx512f 
-mno-avx512er -mno-avx512cd -mno-avx512pf -mno-prefetchwt1 -mclflushopt 
-mxsavec -mxsaves -mno-avx512dq -mno-avx512bw -mno-avx512vl 
-mno-avx512ifma -mno-avx512vbmi -mno-clwb -mno-pcommit -mno-mwaitx 
-mno-clzero -mno-pku --param l1-cache-size=32 --param 
l1-cache-line-size=64 --param l2-cache-size=8192 -mtune=skylake 
-DNPY_NO_DEPRECATED_API=NPY_1_7_API_VERSION -m64 -DMS_WIN64 
-IC:\Python34_64bit\lib\site-packages\numpy\core\include 
IC:\Python34_64bit\include -IC:\Python34_64bit\lib\site-packages\theano\gof 
-o C:\Users\Jwely\AppData\Local\Theano\compiledir_Windows-7-6.1.7601-SP1-Intel64_Family_6_Model_94_Stepping_3_GenuineIntel-3.4.4-64\lazylinker_ext\lazylinker_ext.pyd 
C:\Users\Jwely\AppData\Local\Theano\compiledir_Windows-7-6.1.7601-SP1-Intel64_Family_6_Model_94_Stepping_3_GenuineIntel-3.4.4-64\lazylinker_ext\mod.cpp 
-LC:\Python34_64bit\libs -LC:\Python34_64bit -lpython34 


In file included from c:\mingw\include\c++\6.1.0\math.h:36:0, 
from C:\Python34_64bit\include/pyport.h:328, 
from C:\Python34_64bit\include/Python.h:50, 
from C:\Users\Jwely\AppData\Local\Theano\compiledir_Windows-7-6.1.7601-SP1-Intel64_Family_6_Model_94_Stepping_3_GenuineIntel-3.4.4-64\lazylinker_ext\mod.cpp:1: 
c:\mingw\include\c++\6.1.0\cmath:1133:11: error: '::hypot' has not been declared 
    using ::hypot; 
      ^~~~~ 

這可能是值得指出的是,它打印此錯誤之前,它打印的代碼整個文件的價值,你可以找到整個錯誤輸出這裏

我不知道接下來要嘗試什麼,我遵循了兩次指導,對某些依賴使用了幾種不同的安裝方法,並且確保在每次嘗試和重新啓動之間清理我的系統路徑。

回答

26

這爲我工作註釋掉所有

#define hypot _hypot 

宏:

  1. 轉到您的用戶文件夾:C:/用戶/ [用戶名]
  2. 創建.theanorc文件,如果它不存在
  3. 確保它包括線:

     
    [gcc] 
    cxxflags = -D_hypot=hypot 
    
+1

不知道爲什麼這爲什麼downvoted,偉大的修復,除非我失去了一些東西。 – FatalMojo

+0

謝謝!像魅力一樣工作! – hnzjo

+0

我該如何創建一個沒有名字的文件? Windows不允許我。 –

0

這爲我工作

  1. 轉到System properties/Advance system setting
  2. 添加你的MinGW安裝路徑,如果已經添加並且看起來像C:\{your MingW installation}\bin 將其更改爲C:\{your MingW installation}
0

上面的答案可能是更好,更持久的解決方案。爲了速戰速決,以下爲我工作:

import theano 
theano.config.gcc.cxxflags = "-D_hypot=hypot" 

...與Windows 10,蟒蛇4.4,Python 2.7版,Theano v0.10.0.dev1,m2w64工具鏈V5.3.0

0

首先,卸載所有Theano版本。

然後:

pip install pydot-ng 

conda install mingw libpython 

pip install git+https://github.com/Theano/Theano.git#egg=Theano 
相關問題