2016-07-27 10 views
1

最終的に私はCVXPYをPython 2.7にインストールしようとしています。 CVXPYには、CVXOPTなどのいくつかの要件があります。 GohlkeのWebサイトからインストールして、Python Extensions用のWindowsバイナリをホストする2つの方法を試しました。http://www.lfd.uci.edu/~gohlke/pythonlibs/と自分でソースからビルドします。Python 2.7用のCVXOPTをWindows 10にインストールするにはどうすればよいですか?

ゴールケから提供されたバイナリを使用する場合はpythonでインポートしようとしたとき、私は次のエラーを取得する:

import cvxpy 
Traceback (most recent call last): 
File "<stdin>", line 1, in <module> 
... 
File "C:\Python27\Lib\site-packages\cvxpy\interface\cvxopt_interface\dense_matrix_interface.py", line 26, in <module> 
import cvxopt 
File "C:\Python27\Lib\site-packages\cvxopt\__init__.py", line 32, in <module> 
import cvxopt.base 
ImportError: DLL load failed: The specified module could not be found. 

私はソースからビルドする場合base.pydファイルがcvxopt/

に存在することを確認しています私は、サイトからの指示に従った、最終的にpython setup.py build --compiler=mingw32でCVXOPTを構築するとき、私は、次のエラーを得た:

C:\MinGW\bin\gcc.exe -mdll -O -Wall -Isrc/C/SuiteSparse/AMD/Include -Isrc/C/SuiteSparse/SuiteSparse_config -IC:\Python27\include -IC:\Python27\PC -c src/C/SuiteSparse/SuiteSparse_config/SuiteSparse_config.c -o build\temp.win32-2.7\Release\src\c\suitesparse\suitesparse_config\suitesparse_config.o 
src/C/SuiteSparse/SuiteSparse_config/SuiteSparse_config.c: In function 'SuiteSparse_tic': 
src/C/SuiteSparse/SuiteSparse_config/SuiteSparse_config.c:358:21: error: storage size of 't' isn't known 
struct timespec t ; 
       ^
src/C/SuiteSparse/SuiteSparse_config/SuiteSparse_config.c:359:5: warning: implicit declaration of function 'clock_gettime' [-Wimplicit-function-declaration] 
clock_gettime (CLOCK_MONOTONIC, &t) ; 
^ 
src/C/SuiteSparse/SuiteSparse_config/SuiteSparse_config.c:359:20: error: 'CLOCK_MONOTONIC' undeclared (first use in this function) 
clock_gettime (CLOCK_MONOTONIC, &t) ; 
       ^
src/C/SuiteSparse/SuiteSparse_config/SuiteSparse_config.c:359:20: note: each undeclared identifier is reported only once for each function it appears in 
src/C/SuiteSparse/SuiteSparse_config/SuiteSparse_config.c:358:21: warning: unused variable 't' [-Wunused-variable] 
struct timespec t ; 
       ^
error: command 'C:\\MinGW\\bin\\gcc.exe' failed with exit status 1 

私はこれとerror: storage size of 't' isn't knownについていくつかの調査をしましたが、それがCVXOPTのフォルトかWindowsかどうか判断できません。

私はWindows 10でPython2.7を使用しています。これらの問題のいくつかには、どんな提案や明快さもあります。私が言及したように、単にCVXPYを動作させようとしていますが、CVXOPTにハングアップしているようです。ありがとう!

UPDATE

私は私が持っていた現在のnumpyのバージョンをアンインストールし、http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpyからnumpyの-MKL WHLをインストール/ダウンロードすることによりCVXOPTの作業インストールを取得することができました。私はCVXOPTとCVXPYをインストールしました。最終的に、cvxopt.base DLLエラーなしで正常にインポートcvxpyを取得することができました。

私が持っていたコンパイルエラーについてはまだ興味があります。

+0

gohlkeのホイールを使用して私の日を保存してくれてありがとう。まだ不思議なことに、なぜanacondaのnumpyバージョンが動作しないのですか? – dofine

答えて

1

ありがとうございます。私の2セントはこれです:

Windows 7のAnacondaでは、omnia repo conda install -c omnia cvxoptを使いました。それは動作しているように見えます。壊れた場合はここで更新されます。

関連する問題