天天看點

mingw w64 v8.0.0_windows下不安裝visual studio使用cython,python3.7

winows下要使用cython,官方推薦用的是visual studio,衆所周知,宇宙第一IDE太笨重了,那能不能像linux下一樣,用gcc呢,答案是肯定的~

首先下載下傳gcc,MinGW-w64 - for 32 and 64 bit Windows

下載下傳完解壓,把 目前檔案夾mingw64bin和目前檔案夾mingw64x86_64-w64-mingw32lib,配置到環境變量PATH裡,不明白可以了解一下配置環境變量~

然後我們這裡的python使用的是Anaconda的

假設我們重新建立一個環境

conda create -n python37 python=3.7

激活環境

activate python37也有可能是conda activate python37或者source activate python37,根據提示輸入即可

然後要下載下傳python的庫檔案

可以先嘗試一下

conda install -c anaconda libpython

不知道什麼原因我這邊會一直停留在solving environment這裡,是以隻能手動下載下傳然後安裝

https://anaconda.org/anaconda/libpython/files

下載下傳相應版本,我這裡是python3.7,然後conda libpython-2.1-py37_0.tar.bz2,稍等片刻就安裝完畢

之後根據https://blog.csdn.net/huachao1001/article/details/88253977,這篇部落格給的demo做了個測試,測試中會遇到一個bug,是報hypot沒有定義,找到cmath裡的

using::hypot

這句,然後在這之前加上

#define hypot _hypot

,當然改c++的源碼可能會讓某些c++程式不能通過編譯,我們也可以找到anaconda所在檔案夾下的envspython37includepyconfig.h找到

#define hypot _hypot

注釋掉(在前面加//)

mingw w64 v8.0.0_windows下不安裝visual studio使用cython,python3.7

然後根據demo,就可以測試通過

mingw w64 v8.0.0_windows下不安裝visual studio使用cython,python3.7

參考資料:

'::hypot' has not been declared

MinGW-w64 - for 32 and 64 bit Windows

https://blog.csdn.net/huachao1001/article/details/88253977

Welcome to Cython’s Documentation

cython/cython