为Python编译CPU模块时出错

时间:2018-07-10 15:03:17

标签: python c++ tensorflow cmake

系统信息

我是否已编写自定义代码:否

OS平台和发行版:Windows 10 64bit

TensorFlow的安装来源:最新的主要来源

TensorFlow版本:提交dfcec82

Python版本:3.6.5

CMake版本:3.12.0-rc2

MS C + _ +编译器版本:19.00.24234.1

CPU型号和内存:具有16GB RAM的i5-4460

要重现的精确命令:

  1. 以管理员身份打开开发人员命令行

  2. 选择64位编译器

“ C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Enterprise \ Common7 \ Tools \ vsdevcmd \ ext \ vcvars.bat” amd64

  1. cd D:\ opencv \ tensorflow \ tensorflow \ contrib \ cmake \ build

4。

cmake .. -A x64 -T host=x64 -DCMAKE_BUILD_TYPE=Release -DSWIG_EXECUTABLE=D:/opencv/swigwin-3.0.12/swig.exe -DPYTHON_EXECUTABLE="C:/Users/FiFo/AppData/Local/Programs/Python/Python36/python.exe" -DPYTHON_LIBRARIES="C:/Users/FiFo/AppData/Local/Programs/Python/Python36/libs/python36.lib" -Dtensorflow_WIN_CPU_SIMD_OPTIONS=/arch:AVX2 -Dtensorflow_BUILD_CC_TESTS=OFF -Dtensorflow_BUILD_PYTHON_TESTS=OFF -Dtensorflow_BUILD_MORE_PYTHON_TESTS=OFF -Dtensorflow_BUILD_CC_EXAMPLE=ON -Dtensorflow_BUILD_PYTHON_BINDINGS=ON -Dtensorflow_BUILD_CC_TESTS=OFF -Dtensorflow_OPTIMIZE_FOR_NATIVE_ARCH=ON -Dtensorflow_ENABLE_MKL_SUPPORT=ON -Dtensorflow_ENABLE_MKLDNN_SUPPORT=ON -Dtensorflow_VERBOSE=ON -Dtensorflow_BUILD_SHARED_LIB=ON
  1. MSBuild /p:Configuration=Release ALL_BUILD.vcxproj 成功
  2. MSBuild /p:Configuration=Release INSTALL.vcxproj 成功

  3. MSBuild /p:Configuration=Release tf_python_build_pip_package.vcxproj

失败:

Generating init.py files for Python API.

Traceback (most recent call last):

File "D:\opencv\tensorflow\tensorflow\contrib\cmake\build\tf_python\tensorflow\python\pywrap_tensorflow_internal.py", line 14, in swig_import_helper
return importlib.import_module(mname)

File "C:\Users\FiFo\AppData\Local\Programs\Python\Python36\lib\importlib_init_.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)

File "", line 994, in _gcd_import
File "", line 971, in _find_and_load
File "", line 955, in _find_and_load_unlocked
File "", line 658, in _load_unlocked
File "", line 571, in module_from_spec
File "", line 922, in create_module
File "", line 219, in _call_with_frames_removed
ImportError: DLL load failed: NÒo foi possÝvel encontrar o m¾dulo especificado.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):

File "D:\opencv\tensorflow\tensorflow\contrib\cmake\build\tf_python\tensorflow\python\pywrap_tensorflow.py", line 58, in 
from tensorflow.python.pywrap_tensorflow_internal import *

File "D:\opencv\tensorflow\tensorflow\contrib\cmake\build\tf_python\tensorflow\python\pywrap_tensorflow_internal.py", line 17, in 
_pywrap_tensorflow_internal = swig_import_helper()

File "D:\opencv\tensorflow\tensorflow\contrib\cmake\build\tf_python\tensorflow\python\pywrap_tensorflow_internal.py", line 16, in swig_import_helper
return importlib.import_module('pywrap_tensorflow_internal')

File "C:\Users\FiFo\AppData\Local\Programs\Python\Python36\lib\importlib_init.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)

ModuleNotFoundError: No module named '_pywrap_tensorflow_internal'

Failed to load the native TensorFlow runtime.

它以前在1.8版之前就可以使用

我不想安装PIP版本

编译在Ubuntu 16.04上没有任何问题

1 个答案:

答案 0 :(得分:0)

不再正式支持CMake。 Bazel是唯一适用于所有配置的选项。