安装mxnet还是遇到不少麻烦事,现在简单记一下,挖个坑,后续详细补充,打算写一下我的mxnet探索之旅。

更新: 具体安装mxnet,cuda,opencv过程已经补坑——点击进入

  不知道为什么,在cuda7.5+ubuntu14.04amd64 + opencv2.4.13时,会显卡驱动有问题,无法显示桌面.但是可以正常使用。后续我改为16.04+cuda8.0rc+opencv2.4.13,解决了桌面显示问题且正常使用,但是在想把opencv2.4.13换为opencv3.10时,编译opencv3.10时会报错,关于cudalegacy模块,如下; 

/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘NppiGraphcutState’ has not been declared
typedef NppStatus (*init_func_t)(NppiSize oSize, NppiGraphcutState** ppStat
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘NppiGraphcutState’ does not name a type
operator NppiGraphcutState*()
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘NppiGraphcutState’ does not name a type
NppiGraphcutState* pState;
^
In file included from /home/ecarx/opencv-3.1./build/modules/cudalegacy/precomp.hpp:::
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp: In constructor ‘{anonymous}::NppiGraphcutStateHandler::NppiGraphcutStateHandler(NppiSize, Npp8u*, {anonymous}::init_func_t)’:
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘pState’ was not declared in this scope
nppSafeCall( func(sznpp, &pState, pDeviceMem) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp: In destructor ‘{anonymous}::NppiGraphcutStateHandler::~NppiGraphcutStateHandler()’:
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘pState’ was not declared in this scope
nppSafeCall( nppiGraphcutFree(pState) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcutFree’ was not declared in this scope
nppSafeCall( nppiGraphcutFree(pState) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp: In function ‘void cv::cuda::graphcut(cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::Stream&)’:
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcutGetSize’ was not declared in this scope
nppSafeCall( nppiGraphcutGetSize(sznpp, &bufsz) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcutInitAlloc’ was not declared in this scope
NppiGraphcutStateHandler state(sznpp, buf.ptr<Npp8u>(), nppiGraphcutInitAll
^
In file included from /home/ecarx/opencv-3.1./build/modules/cudalegacy/precomp.hpp:::
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcut_32s8u’ was not declared in this scope
nsp.step), sznpp, labels.ptr<Npp8u>(), static_cast<int>(labels.step), state) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcut_32f8u’ was not declared in this scope
nsp.step), sznpp, labels.ptr<Npp8u>(), static_cast<int>(labels.step), state) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp: In function ‘void cv::cuda::graphcut(cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::GpuMat&, cv::cuda::Stream&)’:
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcut8GetSize’ was not declared in this scope
nppSafeCall( nppiGraphcut8GetSize(sznpp, &bufsz) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcut8InitAlloc’ was not declared in this scope
NppiGraphcutStateHandler state(sznpp, buf.ptr<Npp8u>(), nppiGraphcut8InitAl
^
In file included from /home/ecarx/opencv-3.1./build/modules/cudalegacy/precomp.hpp:::
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcut8_32s8u’ was not declared in this scope
nsp.step), sznpp, labels.ptr<Npp8u>(), static_cast<int>(labels.step), state) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
/home/ecarx/opencv-3.1./modules/cudalegacy/src/graphcuts.cpp::: error: ‘nppiGraphcut8_32f8u’ was not declared in this scope
nsp.step), sznpp, labels.ptr<Npp8u>(), static_cast<int>(labels.step), state) );
^
/home/ecarx/opencv-3.1./modules/core/include/opencv2/core/private.cuda.hpp::: note: in definition of macro ‘nppSafeCall’
#define nppSafeCall(expr) cv::cuda::checkNppError(expr, __FILE__, __LINE__, CV
^
modules/cudalegacy/CMakeFiles/opencv_cudalegacy.dir/build.make:: recipe for target 'modules/cudalegacy/CMakeFiles/opencv_cudalegacy.dir/src/graphcuts.cpp.o' failed
make[]: *** [modules/cudalegacy/CMakeFiles/opencv_cudalegacy.dir/src/graphcuts.cpp.o] Error
make[]: *** 正在等待未完成的任务....
[ %] Linking CXX executable ../../bin/opencv_perf_photo
CMakeFiles/Makefile2:: recipe for target 'modules/cudalegacy/CMakeFiles/opencv_cudalegacy.dir/all' failed
make[]: *** [modules/cudalegacy/CMakeFiles/opencv_cudalegacy.dir/all] Error
make[]: *** 正在等待未完成的任务....
[ %] Built target opencv_perf_photo
Makefile:: recipe for target 'all' failed
make: *** [all] Error

编译opencv3.10报错

  经多次尝试,都不成功。暂时放弃使用,初步猜测是因为,opencv3.10是2015年年末发行的,cuda8.0rc是2016.05发行的,所以本身opencv3.10不支持cuda8.0rc,但是我还没有去github问(opencv2.4.13是2016.05发行,使用正常),后续还会再尝试,到时再更新。

  我个人是因为硬件问题,所以环境选ubuntu16.04+cuda8.0rc。如果没这个限制最好选择比最新版本低一个版本,以求稳定。

  不得不说,搭建环境很耗时间,环境稳定后,不要轻易改变。

mxnet环境搭建随记的更多相关文章

  1. HBase环境搭建随记

    ====软件版本==== jdk:jdk-8u77-linux-x64.tar.gz zookeeper:zookeeper-3.4.6.tar.gz hadoop:hadoop-2.7.4.tar. ...

  2. ubantu16.04+mxnet +opencv+cuda8.0 环境搭建

    ubantu16.04+mxnet +opencv+cuda8.0 环境搭建 建议:环境搭建完成之后,不要更新系统(内核) 转载请注明出处: 微微苏荷 一 我的安装环境 系统:ubuntu16.04 ...

  3. 痞子衡嵌入式:语音处理工具Jays-PySPEECH诞生记(1)- 环境搭建(Python2.7.14 + PyAudio0.2.11 + Matplotlib2.2.3 + SpeechRecognition3.8.1 + pyttsx3 2.7)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是语音处理工具Jays-PySPEECH诞生之环境搭建. 在写Jays-PySPEECH时需要先搭好开发环境,下表列出了开发过程中会用到的 ...

  4. 痞子衡嵌入式:串口调试工具Jays-PyCOM诞生记(1)- 环境搭建(Python2.7.14 + pySerial3.4 + wxPython4.0.3)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是串口调试工具Jays-PyCOM诞生之环境搭建. 在写Jays-PyCOM时需要先搭好开发和调试环境,下表列出了开发过程中会用到的所有软 ...

  5. windows kafka 环境搭建踩坑记

    版本介绍(64位): Windows 10 JDK1.8.0_171 zookeeper-3.4.8/ kafka_2.11-0.10.0.1.tgz 点击链接进行下载 1. JDK安装和环境搭建 自 ...

  6. 踩坑记:Tensorflow环境搭建

    自从上一篇论文投出去,之后就各种事就来了……处理那些乱七八糟的事就是让人心累,在加上师哥们毕业,能帮我的人越来越少了,而要指望你的人呢,越来越多.一想到那些用搜索引擎都搜不到资料的人,蓦地想起邓爷爷说 ...

  7. mac开发环境爬坑记(搭建php+nginx+mysql+redis+laravel+git+phpstorm)

    题外话:前几天,终于以原价一半的价格,将我那台15版mbp在bbs上卖了出去.之所以用了“终于”这个词儿,是我一直迟迟没有下定决心卖掉它,可眼瞅着再不卖掉,又要掉价,况且我的新电脑,也终于下来了. 话 ...

  8. .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门

    2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...

  9. JavaScript学习(一) —— 环境搭建与JavaScript初探

    1.开发环境搭建 本系列教程的开发工具,我们采用HBuilder. 可以去网上下载最新的版本,然后解压一下就能直接用了.学习JavaScript,环境搭建是非常简单的,或者说,只要你有一个浏览器,一个 ...

随机推荐

  1. Java学习之强引用,弱引用,软引用 与 JVM

    1.java内存管理分为内存分配和内存回收,都不需要程序员负责. 2.垃圾回收的机制主要是看对象是否有引用指向该对象.  java对象的引用包括  强引用 软引用 弱引用 虚引用 3.强引用 是指创建 ...

  2. hiho #1305 区间求差

    #1305 : 区间求差 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定两个区间集合 A 和 B,其中集合 A 包含 N 个区间[ A1, A2 ], [ A3,  ...

  3. linux下使用ffmpeg将amr转成mp3

    说明:AMR格式是智能手机上的常用音频文件格式,比MP3格式的压缩比大.同样时长的AMR文件大概是MP3的十分之一,所以在移动互联项目中应用比较广泛.但目前AMR格式在个人电脑上应用较少,所以目前大部 ...

  4. MikroTik RouterOS防火墙与过滤详解

    MikroTik RouterOS能对包状态过滤:P2P协议过滤:源和目标NAT:对源MAC.IP地址.端口.IP协议.协议(ICMP.TCP.MSS等).接口.对内部的数据包和连接作标记.ToS 字 ...

  5. 17 任务调度相关类综述——Live555源码阅读(一)任务调度相关类

    这是Live555源码阅读的第二部分,包括了任务调度相关的三个类.任务调度是Live555源码中很重要的部分. 本文由乌合之众 lym瞎编,欢迎转载 http://www.cnblogs.com/ol ...

  6. HDU 1160 DP最长子序列

    G - FatMouse's Speed Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d & %I64 ...

  7. STL---list(列表)

    Lists将元素按顺序储存在链表中. 与 向量(vectors)相比, 它允许快速的插入和删除,但是随机访问却比较慢. list的类模板声明为 template<class T, class A ...

  8. struts2 校验数据的有效性 2种方式

    Struts2的数据校验: 数据的校验分为客户端校验和服务器端两种: 客户端校验:JS完成的校验.(为了提升用户体验.减少用户的输入错误) 服务器端校验:在后台的校验.(必须的.) 手动编码进行校验: ...

  9. CentOS卸载OpenJDK并安装Sun JDK

    第一步:查看Linux自带的JDK是否已安装 (卸载centOS已安装的1.4) 安装好的CentOS会自带OpenJdk,用命令 java -version ,会有下面的信息: java versi ...

  10. C++实现VPN工具之代码示例

    创建.连接.挂断.删除VPN实现起来并不难,下面给出一套比较完整的代码.该段代码只是示例代码,但是已经通过了编译,对API的使用和VPN操作步骤是没问题的.具体每个API代表的意义可以参看<C+ ...