安装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. css 3d 动画 相关

    transform-style: preserve-3d; 设置3D模式 perspective:700px :属性定义 3D 元素距视图的距离,以像素计.该属性允许您改变 3D 元素查看 3D 元素 ...

  2. git 教程(3)--时光机穿梭

    我们已经成功地添加并提交了一个readme.txt文件,现在,是时候继续工作了,于是,我们继续修改readme.txt文件,改成如下内容 Git is a distributed version co ...

  3. 架构Android App总结

    历时两个多月,自己架构的一个App快要完成了,有很多可以总结的地方: 1, 各个模块尽可能独立,不要直接调用,用消息机制解耦.包括页面跳转不要直接startActivity,而是用消息跳转:业务模块请 ...

  4. net-snmp子代理(SubAgent)编写详述

    net-snmp子代理(SubAgent)编写 net-snmp子代理(SubAgent)编写 Netsnmp_Node_Handler MIB/OID定义 1.头文件test.h的编写 2.test ...

  5. 【Networkk】一篇文章完全搞清楚 scoket read/write 返回码、阻塞与非阻塞、异常处理 等让你头疼已久的问题

    浅谈TCP/IP网络编程中socket的行为   我认为,想要熟练掌握Linux下的TCP/IP网络编程,至少有三个层面的知识需要熟悉: 1. TCP/IP协议(如连接的建立和终止.重传和确认.滑动窗 ...

  6. ADO.NET中的五个主要对象

    Connection:主要是开启程序和数据库之间的连接.没有利用连接对象将数据库打开,是无法从数据库中取得数据的.Close和Dispose的区别,Close以后还可以Open,Dispose以后则不 ...

  7. React 源码解读参考,理解原理。

    Rubix - ReactJS Powered Admin Template 文档:   http://rubix-docs.sketchpixy.com/ ===================== ...

  8. ios 引入第三方库 运行时找不到函数实现

    今天引入webtrends 这个库,结果一直运行时找不到函数,纳闷了一下午! 后来发现,是other flag没有设置对,对于那些包含category用来扩展ios原始类型的库,链接的时候需要特别的链 ...

  9. 在Linux下记录所有用户的登录和操作日志

    一般我们可以用history命令来查看用户的操作记录,但是这个命令不能记录是哪个用户登录操作的,也不能记录详细的操作时间,且不完整:所以误操作而造成重要的数据丢失,就很难查到是谁操作的. 在这里我们通 ...

  10. js中setInterval与setTimeout用法

    setTimeout 定义和用法: setTimeout()方法用于在指定的毫秒数后调用函数或计算表达式.     语法: setTimeout(code,millisec)     参数:     ...