在 ubuntu 16.04 中安装 Caffe 时遇到困难

Posted

技术标签:

【中文标题】在 ubuntu 16.04 中安装 Caffe 时遇到困难【英文标题】:Having difficulties installing Caffe in ubuntu 16.04 【发布时间】:2016-09-07 08:25:01 【问题描述】:

操作系统:ubuntu 16.04 CUDA:7.5 库德恩:5

我正在关注this 使用 gpu 安装 caffe 的教程。 在这里,我想要安装 opencv 3.1。但是当系统中已经安装了CUDA时,opencv的编译会报错。

我在尝试make opencv 3.1 时遇到的错误是:

/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_gpu_mat.cu.o.cmake:266 (message):
  Error generating file
  /home/cortana/Downloads/opencv-3.1.0/build/modules/core/CMakeFiles/cuda_compile.dir/src/cuda/./cuda_compile_generated_gpu_mat.cu.o


modules/core/CMakeFiles/opencv_core.dir/build.make:63: recipe for target 'modules/core/CMakeFiles/cuda_compile.dir/src/cuda/cuda_compile_generated_gpu_mat.cu.o' failed
make[2]: *** [modules/core/CMakeFiles/cuda_compile.dir/src/cuda/cuda_compile_generated_gpu_mat.cu.o] Error 1
CMakeFiles/Makefile2:1505: 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

我尝试通过添加行 set(CMAKE_CXX_FLAGS "$CMAKE_CXX_FLAGS -D_FORCE_INLINES") 来更改 opencv 3.1 的 CMakeLists.txt。另外,我检查了更改 /usr/include/string.h 提供的 here 的建议。但我已经有了文件的更新版本。 我无法构建 opencv 3.1,因此无法构建 Caffe。

【问题讨论】:

CUDA 7.5 不支持 Ubuntu 16 或 gcc 5 我也试过用 GCC 4.8 编译,它给出了同样的错误 【参考方案1】:

尝试使用 CUDA 8。它适用于我在 Ubuntu 16.04 上使用 GeForce GTX 960M

【讨论】:

以上是关于在 ubuntu 16.04 中安装 Caffe 时遇到困难的主要内容,如果未能解决你的问题,请参考以下文章

(译)综合指南:通过Ubuntu 16.04上从Source构建来安装支持GPU的Caffe2

sh 在ubuntu 16.04中安装phabricator

如何在 Ubuntu 16.04 中安装 php-curl

如何在 Ubuntu 16.04 中安装 Charles Proxy 4

sh 在Ubuntu 16.04中安装opencv-2.4.13

Ubuntu 16.04中安装tftp