ここでは、Dynet w/GPUとPythonをインストールする場合のチュートリアルに続きます。http://dynet.readthedocs.io/en/latest/python.html#windows-python-install です。WindowsにDynet w/Pythonをインストールする際にエラーが発生しました
私はcmakeを実行するステップに行くことができ、すべてがうまく見えます。この問題は、Pythonプロジェクトを構築しているようです。
私が実行します。
cmake .. -DEIGEN3_INCLUDE_DIR=$PWD/../../eigen -DPYTHON=`which python` -DBACKEND=cuda -DCUDA_TOOLKIT_ROOT_DIR="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0" -G"Visual Studio 14 2015 Win64"
$ cmake .. -DEIGEN3_INCLUDE_DIR=$PWD/../../eigen -DPYTHON=`which python` -DBACKEND=cuda -DCUDA_TOOLKIT_ROOT_DIR="C:/P
rogram Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0" -G"Visual Studio 14 2015 Win64"
-- Selecting Windows SDK version to target Windows 10.0.16299.
-- The C compiler identification is MSVC 19.0.24210.0
-- The CXX compiler identification is MSVC 19.0.24210.0
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/x86_amd64/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- BACKEND: cuda
-- Found CUDA: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0 (found version "9.0")
CUDA_LIBRARIES: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0/lib/x64/cudart_static.lib
-- Failed to find CUDNN in path: (Did you set CUDNN_ROOT properly?)
-- CUDNN not found, some dependent functionalities will be disabled
-- Eigen dir is C:/Users/pie_a/Documents/coding/nlp/adc2181_h4/dynet-base/eigen
-- Looking for pthread.h
-- Looking for pthread.h - not found
-- Found Threads: TRUE
-- Found Cython version 0.27.3
--- CUDA: CUBLAS: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0/lib/x64/cublas.lib;C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0/lib/x64/cublas_device.lib RT: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0/lib/x64/cudart_static.lib
CMAKE_INSTALL_PREFIX="C:/Program Files/dynet"
PROJECT_SOURCE_DIR="C:/Users/pie_a/Documents/coding/nlp/adc2181_h4/dynet-base/dynet"
PROJECT_BINARY_DIR="C:/Users/pie_a/Documents/coding/nlp/adc2181_h4/dynet-base/dynet/build"
LIBS="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0/lib/x64/cudart_static.lib"
EIGEN3_INCLUDE_DIR="C:/Users/pie_a/Documents/coding/nlp/adc2181_h4/dynet-base/eigen"
MKL_LINK_DIRS=""
WITH_CUDA_BACKEND="1"
CUDA_RT_FILES="cudart_static.lib"
CUDA_RT_DIRS="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0/lib/x64"
CUDA_CUBLAS_FILES="cublas.lib\;cublas_device.lib"
CUDA_CUBLAS_DIRS="C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v9.0/lib/x64"
MSVC="1"
-- Configuring done
-- Generating done
-- Build files have been written to: C:/Users/pie_a/Documents/coding/nlp/adc2181_h4/dynet-base/dynet/build
すべてが良いと思われるが生成します。しかし、私は、Visual Studio上に構築しようとしたとき、私は含めpydynetプロジェクトで37個のエラー、発生した:
Severity Code Description Project File Line Suppression State
Error command 'C:\\Users\\pie_a\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\amd64\\cl.exe' failed with exit status 2 pydynet C:\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base\dynet\build\python\CUSTOMBUILD 1
を私はそれが、この時点で動作していないと仮定して、実行していることから、次のステップが失敗進みます次のコマンドでエラーが表示されます。
$ python setup.py build --skip-build install
running build
INFO:root:CMAKE_PATH='C:\\Users\\pie_a\\Anaconda3\\envs\\nlphw\\Scripts\\cmake.exe'
INFO:root:MAKE_PATH='C:\\MinGW\\msys\\1.0\\bin\\make.exe'
INFO:root:MAKE_FLAGS='-j 8'
INFO:root:EIGEN3_INCLUDE_DIR='C:\\Users\\pie_a\\Documents\\coding\\nlp\\adc2181_h4\\dynet-base\\dynet\\build\\py2.7-64bit\\eigen'
INFO:root:EIGEN3_DOWNLOAD_URL='https://bitbucket.org/eigen/eigen/get/699b6595fc47.zip'
INFO:root:CC_PATH='C:\\MinGW\\bin\\gcc.exe'
INFO:root:CXX_PATH='C:\\MinGW\\bin\\g++.exe'
INFO:root:SCRIPT_DIR='C:\\Users\\pie_a\\Documents\\coding\\nlp\\adc2181_h4\\dynet-base\\dynet'
INFO:root:BUILD_DIR='C:\\Users\\pie_a\\Documents\\coding\\nlp\\adc2181_h4\\dynet-base\\dynet\\build\\py2.7-64bit'
INFO:root:INSTALL_PREFIX='C:\\Users\\pie_a\\Anaconda3\\envs\\nlphw\\Lib\\site-packages\\..\\..\\..'
INFO:root:PYTHON='C:\\Users\\pie_a\\Anaconda3\\envs\\nlphw\\python.exe'
cmake version 3.10.0
CMake suite maintained and supported by Kitware (kitware.com/cmake).
g++.exe (GCC) 4.8.1
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
running build_py
INFO:root:Building Python files...
file dynet_viz.py (for module dynet_viz) not found
file dynet_config.py (for module dynet_config) not found
creating build
creating build\lib.win-amd64-2.7
copying dynet.py -> build\lib.win-amd64-2.7
file dynet_viz.py (for module dynet_viz) not found
file dynet_config.py (for module dynet_config) not found
running build_ext
INFO:root:Building Cython extensions...
INFO:root:INCLUDE_DIRS='C:\\Users\\pie_a\\Documents\\coding\\nlp\\adc2181_h4\\dynet-base\\dynet C:\\Users\\pie_a\\Documents\\coding\\nlp\\adc2181_h4\\dynet-base\\dynet\\build\\py2.7-64bit\\eigen'
INFO:root:LIBRARIES='dynet'
INFO:root:LIBRARY_DIRS='C:\\Users\\pie_a\\Documents\\coding\\nlp\\adc2181_h4\\dynet-base\\dynet/dynet/ . C:\\Users\\pie_a\\Documents\\coding\\nlp\\adc2181_h4\\dynet-base\\dynet\\build\\py2.7-64bit/dynet/'
INFO:root:COMPILER_ARGS='-std=c++11 -Wno-unused-function'
INFO:root:EXTRA_LINK_ARGS="-Wl,-rpath='C:\\\\Users\\\\pie_a\\\\Anaconda3\\\\envs\\\\nlphw\\\\Lib\\\\site-packages\\\\..\\\\..\\\\../lib/',--no-as-needed"
INFO:root:RUNTIME_LIB_DIRS='C:\\Users\\pie_a\\Documents\\coding\\nlp\\adc2181_h4\\dynet-base\\dynet/dynet/ C:\\Users\\pie_a\\Anaconda3\\envs\\nlphw\\Lib\\site-packages\\..\\..\\../lib/'
skipping 'C:\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base\dynet/python\_dynet.cpp' Cython extension (up-to-date)
building '_dynet' extension
creating build\temp.win-amd64-2.7
creating build\temp.win-amd64-2.7\Release
creating build\temp.win-amd64-2.7\Release\Users
creating build\temp.win-amd64-2.7\Release\Users\pie_a
creating build\temp.win-amd64-2.7\Release\Users\pie_a\Documents
creating build\temp.win-amd64-2.7\Release\Users\pie_a\Documents\coding
creating build\temp.win-amd64-2.7\Release\Users\pie_a\Documents\coding\nlp
creating build\temp.win-amd64-2.7\Release\Users\pie_a\Documents\coding\nlp\adc2181_h4
creating build\temp.win-amd64-2.7\Release\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base
creating build\temp.win-amd64-2.7\Release\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base\dynet
creating build\temp.win-amd64-2.7\Release\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base\dynet\python
C:\Users\pie_a\AppData\Local\Programs\Common\Microsoft\Visual C++ for Python\9.0\VC\Bin\amd64\cl.exe /c /nologo /Ox /MD /W3 /GS- /DNDEBUG -IC:\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base\dynet -IC:\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base\dynet\build\py2.7-64bit\eigen -IC:\Users\pie_a\Anaconda3\envs\nlphw\include -IC:\Users\pie_a\Anaconda3\envs\nlphw\PC /TpC:\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base\dynet/python\_dynet.cpp /Fobuild\temp.win-amd64-2.7\Release\Users\pie_a\Documents\coding\nlp\adc2181_h4\dynet-base\dynet/python\_dynet.obj -std=c++11 -Wno-unused-function
cl : Command line error D8021 : invalid numeric argument '/Wno-unused-function'
error: command 'C:\\Users\\pie_a\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\amd64\\cl.exe' failed with exit status 2
さらに詳しい情報を提供しています。問題の原因はいくつかあります:私はpipでBoostをインストールしました。私は、C++コンパイラはBoostをインストールするコンパイラと同じバージョンでなければならないが、初めてビルドするときはVisual Studioのメッセージで別のC++ドライバをインストールしなければならないというメモを見ました。
また、この変数の値はUnix形式ではなくWindowese形式ですが、これは問題ですか?私はそれをシステム環境変数として設定しました。
$ echo $VS90COMNTOOLS
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\
最後に、私はあきらめて、Ubuntu VMに切り替えました。しかし、あなたの応答に感謝します。いつか努力する価値があると感じたら、これを試してみましょう。 –