web-dev-qa-db-ja.com

Windows 10でcython an anaconda 64ビットをインストールする方法

それはすべてタイトルにありますが、誰かがcythonをインストールしてWindows 10のAnaconda 64ビットで実行するための段階的な方法を持っていますか?私は何時間も検索し、たくさんのチュートリアルがあります... Windows 10で取得または実行できなかったものについては、これらすべての方法などを試してみましたが、今のところ無駄です: https ://www.ibm.com/developerworks/community/blogs/jfp/entry/Installing_Cython_On_Anaconda_On_Windows?lang = en

https://github.com/cython/cython/wiki/CythonExtensionsOnWindows

Condaのインストールは行われましたが、問題はコンパイラをpythonにリンクすることです。WindowsSDKを使用するすべてのメソッドと、特にSDKコマンドプロンプトは古く、このプロンプトはVisual Studio 2015には存在せず、setenv関数も存在しません。 'setenv\x64\release'を実行することは不可能であり、このステップがないとコードは機能しません。

MinGWを持つ他のメソッドはエラーを返します:

C:\MinGW\bin\gcc.exe -shared -s build\temp.win-AMD64-3.6\Release\hello.o build\temp.win-AMD64-3.6\Release\hello.cp36-win_AMD64.def -LC:\Users\Utilisateur\Anaconda3\libs -LC:\Users\Utilisateur\Anaconda3\PCbuild\AMD64 -lpython36 -lmsvcr140 -o C:\Users\Utilisateur\Documents\hello.cp36-win_AMD64.pyd
c:/mingw/bin/../lib/gcc/mingw32/6.3.0/../../../../mingw32/bin/ld.exe: cannot find -lmsvcr140
collect2.exe: erreur : ld a retourné 1 code d'état d'exécution
error: command 'C:\\MinGW\\bin\\gcc.exe' failed with exit status 1

なので次に何をしたらいいかわかりません。

助けてください。

絶望的な学生

4
pdzx

python 3.6.5およびMSC v.1900 64ビットを使用して、AnacondaをインストールしたWindows 10で問題を解決しました(実行により提供される情報:

_import sys
sys.version
_

ここにメソッドがあります:

1:Anacondaプロンプトで_conda install -c anaconda cython_を実行してcythonをインストールします

2:_C:\Users\Utilisateur\Anaconda3\Lib\distutils_またはdistutilsライブラリのある場所に移動して、(メモ帳を使用して)distutils.cfgファイルを作成し、

_[build]           
compiler=mingw32 
_

初期化

3: https://sourceforge.net/projects/mingw-w64/files/ で最新バージョンのMingw-w64(32ビットのみをサポートするMing​​wだけでなく)を入手してインストールします

4:パスにC:\Program Files (x86)\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\binを追加します。これは、Windows 10でこれを行う方法に関するリンクです。 https://www.architectryan.com/2018/03/17/add-to- the-path-on-windows-10 /

5:_conda install -c anaconda libpython_と_conda install -c msys2 m2w64-toolchain_を実行して、アナコンダ環境にlibpythonとm2w64-toolchainをインストールします。これは、これらのWebページ https://python-at-risoe.pages.windenergy.dtu。 dk/compiling-on-windows/common_errors.html であり、対応するエラーを修正する必要があります

6:このページで1つ目または2つ目のテストを試してください http://docs.cython.org/en/latest/src/quickstart/build.html ステップ5の後で両方とも機能しました

お役に立てば幸いです。

3
pdzx

MinGW-w64を使用しても大丈夫ですか? Cython Wiki で、これは推奨されないと述べています。

** MinGW-w64は使用しないでください。気づくと思いますが、AMD64バージョンのPythonでは、Python(libpython27.a)など)のMinGWインポートライブラリが省略されています。これは意図的なものです。dlltoolを使用して作成しないでください。公式のMinGW-w64リリースはまだありません。TDM-GCCなどから64ビットのビルドを取得できますが、まだ「ベータ版」で不安定と見なされています。MSVCランタイムと競合するmingwランタイムに関する問題もありました。これはg ++やgfortranのランタイムライブラリの内部など、予期しない場所から発生する可能性があります。安全のために、現時点ではMinGW-w64は使用しないでください。

** LinuxまたはApple MacOSXの経験がある人は、GCC(MinGW)をWindowsのC/C++コンパイラとして選択する可能性があります。GCCはWindowsのプラットフォームCコンパイラではないことに注意してください。 Windows上のほとんどのライブラリおよびアプリケーションとバイナリ互換性があるため、Microsoftのコンパイラを使用します。これは、Linuxで選択したコンパイラとしてGCCを選択することと同じです。MicrosoftのWindows用のプラットフォームC/C++コンパイラは無料です。

** C++の場合、GCC(Mingw)とMSVCが異なるC++ランタイムを使用していることを確認します。拡張機能でC++を使用する場合、C++ランタイムはPythonのCランタイムとも互換性がある必要があります。このため、32ビットx86であっても、常にMicrosoftのC++コンパイラを使用してください。これは、C++が普及しているWindowsなどのプラットフォーム(COMおよびActiveXを参照)では非常に重要です。 GCCをC++コンパイラとして使用する場合、拡張機能は他のC++ライブラリまたはCOMとバイナリ互換性がなく、PythonのCランタイムと互換性がなく、GCCとMSVC間の例外処理の違いによりアプリケーションがクラッシュする可能性があります。

0
user2885606

答えはWindows 10ではなくWindows 7ですが、どのようにしたかを教えてください。

  1. 私はAnacondaを使い始めました(使用:Anaconda 2019.10 for Windows Installer-Python 3.7 version 64 bit))。 MinGW(python sys.versionレポート:MSC v.1915 64ビット(AMD64)ではありません。AnacondaにはCythonが付属しています。 MSCコンパイラではインストールされていません。Jupyterでcythonの例を試してみてください:
_    %load_ext Cython

    %%cython
    cdef int a = 0
    for i in range(10):
        a += i
    print(a)
_

これはエラーをスローします:_Unable to find vcvarsall.bat_

  1. Python= 3.7を含むCythonにはVisual C++ 2015(14.0)が必要です。Microsoftからこのバージョンをダウンロードできなくなったため、ビジュアルスタジオインストーラー:Visual Build Tools 2019をダウンロードしました。インストーラーで「ワークロード」とC++ビルドツールです。次に右側に

I [〜#〜] un [〜#〜]選択済み:

  • MSVC v142-VS 2019 C++ x64/x86ビルドツール
  • Windows用C++ CMakeツール
  • C++ AddressSanititizer(実験的)

私が選択した:

  • Windows 10 SDK
  • テストツールのコア機能-ビルドツール
  • V142ビルドツールのC++/CLIサポート
  • MSVC V140-VS 2015 C++ビルドツール

これをインストールして上記の例をもう一度実行した後、リンカーエラーが発生しました:_LINK : fatal error LNK1158_

3)ディレクトリC:\Program files (x86)\Windows Kitsのサブディレクトリに、次のファイルが見つかりました:_rc.exe_および_rcdll.dll_
私の場合、これらをMSVCのbinディレクトリにコピーしました:C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin

これにより、リンカエラーが消え、Cythonの例が機能しました。まだ何も試していませんが、これですべて解決できるといいのですが。これが誰かを助けることを願っています。

0