2016-04-05 9 views
4

最近python 3.5.0に更新され、これまで運がなかったのでcvxoptをインストールしたいと思います。だから私はPython 2.7を試して、指示に従いましたhere私はmingw(4.9.3)をインストールし、問題なくソースからblasとlapackをビルドしました。私はアナコンダを使用して3.5Windows 7にPython 3.5用のcvxoptをインストールするには

running build 
running build_py 
running build_ext 
building 'base' extension 
C:\minGW\bin\gcc.exe -mdll -O -Wall -IC:\Python27\include -IC:\Python27\ 
c/C/base.c -o build\temp.win32-2.7\Release\src\c\base.o 
C:\minGW\bin\gcc.exe -mdll -O -Wall -IC:\Python27\include -IC:\Python27\ 
c/C/dense.c -o build\temp.win32-2.7\Release\src\c\dense.o 
C:\minGW\bin\gcc.exe -mdll -O -Wall -IC:\Python27\include -IC:\Python27\ 
c/C/sparse.c -o build\temp.win32-2.7\Release\src\c\sparse.o 
src/C/sparse.c: In function 'sparse_concat': 
src/C/sparse.c:368:30: warning: variable 'blk_ncols' set but not used [- 
but-set-variable] 
     int_t blk_nrows = 0, blk_ncols = 0; 
          ^
writing build\temp.win32-2.7\Release\src\c\base.def 
C:\minGW\bin\dllwrap.exe -mdll -static --entry [email protected] --output-lib 
mp.win32-2.7\Release\src\c\libbase.a --def build\temp.win32-2.7\Release\ 
se.def -s build\temp.win32-2.7\Release\src\c\base.o build\temp.win32-2.7 
\src\c\dense.o build\temp.win32-2.7\Release\src\c\sparse.o -Lsrc -LC:\Py 
ibs -LC:\Python27\PCbuild -LC:\Python27\PC\VS9.0 -lm -llapack -lblas -lg 
-lpython27 -lmsvcr90 -o build\lib.win32-2.7\cvxopt\base.pyd 
c:/mingw/bin/../lib/gcc/mingw32/4.9.3\libgfortran.a(write.o):(.text$writ 
0xbb): undefined reference to `signbitq' 
c:/mingw/bin/../lib/gcc/mingw32/4.9.3\libgfortran.a(write.o):(.text$writ 
0xe7): undefined reference to `finiteq' 
c:/mingw/bin/../lib/gcc/mingw32/4.9.3\libgfortran.a(write.o):(.text$writ 
0x314): undefined reference to `finiteq' 
c:/mingw/bin/../lib/gcc/mingw32/4.9.3\libgfortran.a(write.o):(.text$writ 
0x7f2): undefined reference to `isnanq' 
collect2.exe: error: ld returned 1 exit status 
dllwrap: gcc exited with status 1 
error: command 'C:\\minGW\\bin\\dllwrap.exe' failed with exit status 1 

:私は

python setup.py build --compiler=mingw32 

を実行すると は、私は次の出力を取得します。 On this site彼らはcondaコマンドでcvxoptをインストールする方法を示しています。これを試してみると、不明なMSコンパイラのバージョン1900エラーが発生します。 この"patch"を使用すると、インストールはその時点を過ぎますが、インストールしたいすべてのパッケージ(エラーは長すぎるため出力は含まれません)でエラーになります。

これはバージョン3.5では問題ですか?またはmingw?または64ビットのアナコンダですか?私はVC15をインストールしようとしています。それが何かを変えるかどうかは分かりませんが、実際にどこを見ているのか分からないのです。

EDIT:アナコンダ64ビットとPython 3.5のために完璧にhere仕事を示唆したように、あなたがnumpyのとscipyのダウンロードをアンインストールしたバージョンを使用する必要がありますけれども 私はまだ(正確に問題を引き起こすものを知っているが、this siteからのバイナリはありません

minGWについては、コメントhereに示唆されているように、Python 3.5ではまだ動作しない可能性がありますが、2.7でこれらのFortranエラーが発生した理由はまったくありません。

答えて

0

これは遅れているので、カスタムホイールをインストールして問題の解決策を見つけました。しかし、私はあなたの特定の問題の別のオプションを指摘したいと思います。 AnacondaでPython 3.5を実行しているようだから、あなたを助けるかもしれないrdonnellyのチャンネルがあります。彼らは私のpythonは二回インストール破ったので、

conda install -c rdonnelly cvxopt=1.1.9 

このソリューションは、人ではない私のようなカスタムnumpyのscipyのダウンロードおよびインストールする準備のために特に便利です。これが私のwin64 py35システム上で実行するcvxoptを得た唯一の方法でした。このパッケージはPython 3.5用にカスタマイズされており、現在のCondaはデフォルトで3.6をインストールします。私はこの目的のためだけに古いバージョンのCondaをインストールすることにしました。