Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 错误:‘;memcpy’;未在此范围内声明(Ubuntu 16.04,opencv2.4.13)_Python_Opencv_Ubuntu_Cmake - Fatal编程技术网

Python 错误:‘;memcpy’;未在此范围内声明(Ubuntu 16.04,opencv2.4.13)

Python 错误:‘;memcpy’;未在此范围内声明(Ubuntu 16.04,opencv2.4.13),python,opencv,ubuntu,cmake,Python,Opencv,Ubuntu,Cmake,我正试图为Ubuntu 16.04安装opencv2.4.13,但在运行make命令时出现了这样的错误 [ 1%] Built target opencv_core_pch_dephelp [ 1%] Built target pch_Generate_opencv_core [ 2%] Building NVCC (Device) object modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/cuda_com

我正试图为Ubuntu 16.04安装opencv2.4.13,但在运行
make
命令时出现了这样的错误

[  1%] Built target opencv_core_pch_dephelp
[  1%] Built target pch_Generate_opencv_core
[  2%] Building NVCC (Device) object modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/cuda_compile_generated_matrix_operations.cu.o
/usr/include/string.h: In function ‘void* __mempcpy_inline(void*, const void*, size_t)’:
/usr/include/string.h:652:42: error: ‘memcpy’ was not declared in this scope
   return (char *) memcpy (__dest, __src, __n) + __n;
                                          ^
CMake Error at cuda_compile_generated_matrix_operations.cu.o.cmake:266 (message):
  Error generating file
  /home/savvycom/opencv-2.4.13.6/release/modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/./cuda_compile_generated_matrix_operations.cu.o


modules/core/CMakeFiles/opencv_core.dir/build.make:198: recipe for target 'modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/cuda_compile_generated_matrix_operations.cu.o' failed
make[2]: *** [modules/core/CMakeFiles/cuda_compile.dir/__/dynamicuda/src/cuda/cuda_compile_generated_matrix_operations.cu.o] Error 1
CMakeFiles/Makefile2:890: recipe for target 'modules/core/CMakeFiles/opencv_core.dir/all' failed
make[1]: *** [modules/core/CMakeFiles/opencv_core.dir/all] Error 2
Makefile:160: recipe for target 'all' failed
make: *** [all] Error 2
我的cmake配置是:

cmake \
-D CMAKE_BUILD_TYPE=Release \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D CUDA_GENERATION=Kepler \
-D BUILD_LIBPROTOBUF_FROM_SOURCES=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=OFF \
-D PYTHON2_EXECUTABLE=/usr/bin/python2.7 \
-D PYTHON_INCLUDE_DIR=/usr/include/python2.7 \
-D PYTHON_INCLUDE_DIR2=/usr/include/x86_64-linux-gnu/python2.7 \
-D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython2.7.so \
-D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/lib/python2.7/dist-packages/numpy/core/include/ \
-D BUILD_EXAMPLES=ON ..
有人能帮我解决这个问题吗。

在这个版本中是这样的。它已在opencv master中修复

打开
cmake/opencvdetecttcuda.cmake
,在第136行或其周围,添加以下注释行:


请在您的问题中包括您下载的源程序包的URL以及您执行的命令。
  set(OPENCV_CUDA_ARCH_FEATURES "${OPENCV_CUDA_ARCH_FEATURES} ${ARCH}")
    endif()
  endforeach()
+ set(NVCC_FLAGS_EXTRA ${NVCC_FLAGS_EXTRA} -D_FORCE_INLINES)

  # Tell NVCC to add PTX intermediate code for the specified architectures
  string(REGEX MATCHALL "[0-9]+" ARCH_LIST "${ARCH_PTX_NO_POINTS}")