ubuntu配置

1、 显卡驱动(博客:https://www.cnblogs.com/deeplearning1314/p/8444352.html)

(查看GPU型号
lspci | grep -i nvidia
查看NVIDIA驱动版本
sudo dpkg --list | grep nvidia-*   
或者
cat /proc/driver/nvidia/version


(1)卸载原有驱动 sudo apt-get remove –purge nvidia-* 其中(-purge)似乎不需要,会提示命令有误。如果之前没有装过NVIDIA驱动,这步可以不需要,当然,前面提到过,如果先安装Cuda并且在安装Cuda过程中选择安装了不匹配的显卡驱动,这里就需要执行这个命令删掉之前的NVIDIA驱动了。
(2)禁用Ubuntu系统自带的通用显卡驱动nouveau
sudo gedit /etc/modprobe.d/blacklist.conf输入密码后,该命令会用gedit工具打开一个配置文本文件,类似于window里的txt文件,在该文件的最后添加一行:blacklist nouveau后保存退出。然后终端敲入命令 sudo update-initramfs -u
(3)重启电脑,打开终端敲入命令 lsmod | grep nouveau 若无输出表示该驱动禁用成功。
(4)开机后,Ctrl+alt+F1进入tty1,按提示输入用户名(login)、密码(password)后,敲入命令sudo service lightdm stop,显示lightdm stop/waiting字样代表禁用X服务器成功。
(5)安装NVIDIA显卡驱动,若是deb包敲入命令 dpkg -i “.deb文件名”;若是run文件敲入命令sudo sh “.run文件名”。按照提示选择进行安装,如accept、yes、ok等,等待片刻即可安装成功。
(6)敲入命令sudo service lightdm start 打开X服务器后,重启电脑。
(7)进入终端用以下三个命令均可验证显卡驱动是否安装成功,最后一个命令需要根据提示安装glxinfo程序:sudo nvidia-smi(显示GPU设备表)、cat /proc/driver/nvidia/version(显示出用于显示的GPU驱动程序版本号、也就是那块接了显示线的独显的驱动程序版本号)、glxinfo | grep rendering(显示yes)。
×××××××××××××××××Ubuntu16.04+cuda8.0+GTX TITAN X安装配置 ××××××××××××
(扩展)
1、给出cuda下载地址(含历史版本):
https://developer.nvidia.com/cuda-toolkit-archive
选择合适的版本。
2、下载cuda(使用run类型)
3、安装显卡驱动:
sudo apt-get install nvidia-367
 
该方法不需要关闭nouveau和lightdm,如果出现依赖问题可以尝试换源。
在楼主的环境中使用阿里云的源安装成功。
安装完成后,输入nvidia-smi测试。
(出现结果)
3、安装cuda
Run `sudo sh cuda_8.0.44_linux.run`   and   Follow the command-line prompts
运行cuda文件,根据提示输入一些y或n,主要是一些默认安装位置的选择和相关库的安装。因为前面已经安装过显卡驱动,该步不需要再安装显卡驱动,选择n即可。
 
4、测试cuda
打开cuda8.0 Samples默认安装路径(在第三步的相关选项中会提示设置,默认为:/home/ubuntu/NVIDIA_CUDA-8.0_Samples,ubuntu为用户名)编译:
sudo make all -j4
 
某些教程可能提到gcc版本过高的问题,我的ubuntu16.04默认gcc版本为5.4,编译没有出现问题。
 
编译完成后,在当前目录继续输入:
cd bin/x86_64/linux/release
./deviceQuery
出现下面报告,说明安装成功
×××××××××××××××××××××××××××结束××××××××××××××××××××××××××××××


2、 Cuda8.0环境安装与配置
(博客:https://www.cnblogs.com/deeplearning1314/p/8444352.html)
推荐去官网下载Cuda8.0的runfile文件(.run文件)安装,这样可以在安装过程中选择不再安装显卡驱动(否则安装.deb文件会自动又安装了不匹配的显卡驱动),以及在弹出xorg.conf时选择NO。
Cuda官网地址:https://developer.nvidia.com/cuda-downloads
本文Cuda8.0网盘链接:https://pan.baidu.com/s/1diWdKM 密码:fppp
安装Cuda8.0步骤如下:
(1)将下载好的.run文件拷至/home“用户名”目录下,在终端中敲入命令sudo sh Cuda的文件名 –override     (override前是两个-)
(2)然后就进入安装过程,开始都是End User License Agreement(类似于Windows系统安装程序时的一些条款文件),可以CTRL +C 跳过,然后选择accept,下面就是安装的交互界面,开始的Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 367.48?如果先装官网推荐的驱动后装Cuda就一定要选择n,因为之前已经安装了官网推荐的最匹配的驱动了。显示界面大致如下图,按照下图Y、N、accept等作出选择:
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 375.26?
(y)es/(n)o/(q)uit: n

Install the CUDA 8.0 Toolkit?
(y)es/(n)o/(q)uit: y

Enter Toolkit Location
 [ default is /usr/local/cuda-8.0 ]:

Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: y

Install the CUDA 8.0 Samples?
(y)es/(n)o/(q)uit: y

Enter CUDA Samples Location
 [ default is /home/aa ]:

Installing the CUDA Toolkit in /usr/local/cuda-8.0 ...
上述有两处有关什么location的选项,不做任何选择,直接回车
(3)配置Cuda环境变量
在终端里按照图示敲入命令后回车
sudo gedit /etc/profile

配置cuda环境变量:
  export PATH="$PATH:/usr/local/cuda-8.0/bin"
 export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64"

(4)验证是否安装成功,有以下两种方法:
方法一
终端输入命令nvidia-smi(出现类似于上面装显卡驱动时使用该命令的界面,下图是网上找的,实际我们在敲这句命令时,在GPU那栏里是空的,因为这时并没有GPU占用)。

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.111                Driver Version: 384.111                   |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX TIT...  Off  | 00000000:01:00.0  On |                  N/A |
| 22%   44C    P8    17W / 250W |    187MiB / 12199MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0      1102      G   /usr/lib/xorg/Xorg                           128MiB |
|    0      1911      G   compiz                                        56MiB |方法二
利用上面安装过程中下载的Cuda样例程序验证
首先cd到样例程序位置
cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
进入到该目录下,终端命令行输入ls
可以看到.cpp文件(需用g++编译)或者.c文件(需用gcc编译)
sudo apt-get update
sudo apt-get install g++
下载好g++后执行,终端命令行输入
sudo make
sudo ./deviceQuery
如果显示一些关于GPU的信息,则说明安装成功。
3、Cudnn 5.1的安装及配置
在官网:上下载Cudnn5.1安装包(.tgz),需要注册才能下载。
官网:https://developer.nvidia.com/cudnn
本文Cudnn5.1网盘链接:https://pan.baidu.com/s/1hteaiYK 密码:i1u6
将Cudnnan安装包(cudnn-8.0-linux-x64-v5.1.tgz)拷至/home “用户名”目录下,打开终端,输入ls可以看到该文件。解压该文件,终端命令行输入:
sudo tar xvzf cudnn-8.0-linux-x64-v5.1.tgz
依次在终端内敲入以下三句命令即可安装成功:(将库和头文件复制到本机安装的cuda的目录下,如/usr/local/cuda-8.0,如果按照上述安装步骤就是安装在此目录下。)
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
chmod a+r表示添加文件权限,a表示所有用户,r表示可读。
如图所示安装步骤,敲命令时注意空格、“/”等等。
4. 安装Intel MKL 或Atlas(装openblas)

如果没有Intel MKL, 可以用下列命令安装免费的atlas
sudo apt-get install libatlas-base-dev(直接此步安装即可)

5. 安装OpenCV (Optional,如果运行caffe时opencv报错,可以重新按照此步骤安装)
(如果安装cuda8.0,opencv安装opencv2.4.13版本,链接:http://blog.csdn.net/u013066730/article/details/53762682)

我安装的是 2.4.13
(博客地址:https://blog.csdn.net/u013066730/article/details/53762682)
1. 先下载OpenCV的源码
http://opencv.org/
下载opencv2.4.103
2. 解压到任意目录
1. unzip opencv-2.4.13.zip
3. 进入源码目录,创建release目录
1. cd opencv-2.4.13
2. mkdir release
4. 可以看到在OpenCV目录下,有个CMakeLists.txt文件,需要事先安装一些软件
1. sudo apt-get install build-essential
sudo apt-get install cmake
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
sudo apt-get install Python-dev
sudo apt-get install Python-numpy
sudo apt-get install libavcodec-dev
sudo apt-get install libavformat-dev
sudo apt-get install libswscale-dev

5. 进入release目录,安装OpenCV是所有的文件都会被放到这个release目录下
 cd release
6. cmake编译OpenCV源码,安装所有的lib文件都会被安装到/usr/local目录下
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
执行完此命令后将生成一个makefile文件
7. 安装
1. make
2. sudo make install

8. 测试,在某个目录下建立一个test.cpp文件
内容如下:
#include
#include
#include
using namespace cv;

int main(int argc,char* argv[])
{
    Mat image;
    image = imread(argv[1], 1);

    if (argc != 2 || !image.data)
     {
        printf("No image data\n");
        return -1;
     }    
    
    namedWindow("Display Image", CV_WINDOW_AUTOSIZE);
    imshow("Display Image", image);
    waitKey(0);
    return 0;
}

9. 写一个cmake的makefile,也叫CMakeLists.txt
project(test)
find_package(OpenCV REQUIRED)
add_executable(test test)
target_link_libraries(test ${OpenCV_LIBS})
cmake_minimum_required(VERSION 2.8)
10. 编译+运行
1. cmake .
2.
3. make
得到可执行文件test
11.随便弄个jpg图片做个测试,注意要和上面那个可执行文件放在同一目录下面,我这里名字取的是test.jpg。
12.  ./test  test.jpg  如果能看到照片,那就表示成功了

动态链接库和头文件配置过程
1)配置相关信息,使openCV动态库被共享,具体方法如下:
在/etc/ld.so.conf.d目录下添加opencv.conf文件,文件内容如下:
# opencv.conf
/usr/local/lib
使用动态库管理命令ldconfig,使opencv的相关链接库文件被系统共享,具体命令如下:
sudo ldconfig

2)添加OpenCV的头文件位置,首先在/etc/profile文件中添加如下信息:
命令:sudo gedit /etc/profile
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
pkg-config维护opencv的相关配置文件,可以在/usr/local/lib/pkgconfig目录下看到opencv.pc文件,此文件主要记录opencv的动态库信息和头文件信息。
使用pkg-config命令,可以列出opencv的配置信息,具体命令如下:
切换路径:cd /usr/local/lib/pkgconfig
执行如下命令:pkg-config –libs opencv查看opencv相关配置信息(我看不了)
查看opencv的版本pkg-config --modversion opencv
注意:在更改相关文件时,可能文件的权限首先,故需现更改相关的权限

测试OpenCV的安装
1)切换到opencv下载解压后的文件夹目录下,然后进入sample/c/目录下,编译样例文件,具体如下:
cd /home/aa/qxq/software/opencv-2.4.13/samples/c
./build_all.sh
执行完成后,会生成对应的可执行文件。
2)进入该目录,点击一个文件右键运行一下就行了,比如find_obj
成功就表示可以了。



6. 安装Caffe所需要的Python环境
6.1 安装anaconda包
在此下载最新的安装包, 用默认设置安装在用户目录下。
(先看看电脑上python是哪个版本的,然后下载对应的anaconda)
6.2 安装python依赖库

选择的是anaconda linux64 2.7版本python2.7 。下载完成之后,最好也要进行md5sum的检验。完成之后,cd进入下载文件所在的目录,在命令行输入:
$ bash Anaconda2-4.0.0-Linux-x86_64.sh
安装完成之后,在~/.bashrc文件末尾添加Anaconda的库文件(注意“=”两边不要有空格),具体如下:
 
$ sudo gedit ~/.bashrc    
export PATH="/home/aa/anaconda2/bin:$PATH"
export LD_LIBRARY_PATH="/home/aa/anaconda2/lib:$LD_LIBRARY_PATH"
重启电脑之后,在命令行输入:
$ ipython
就可以看到python的版本

7、安装caffe
首先需要安装pip
sudo apt-get install python-pip
再下载caffe,我把caffe放在用户目录下
cd
git clone https://github.com/BVLC/caffe.git
基础依赖库:
sudo apt-get install libprotobuf-dev
sudo apt-get install libleveldb-dev
sudo apt-get install libsnappy-dev
sudo apt-get install libopencv-dev
sudo apt-get install libhdf5-serial-dev
sudo apt-get install protobuf-compiler

1.sudo apt-get install --no-install-recommends libboost-all-dev
2.sudo apt-get install python-skimage ipython python-pil python-h5py ipython python-gflags python-yaml
3.sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

再转到caffe的python目录,安装scipy
cd caffe/python
sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose
最后安装requirement里面的包,需要root权限






**********************************CASE 1 start ********************************
8、matlab2016b 安装
1、下载:下载地址见参考文章
下载后的Linux文件夹会有三个文件分别是R2016b_glnxa64_dvd1.iso、R2016b_glnxa64_dvd2.iso和Matlab 2016b Linux64 Crack文件夹。
rar文件解压,首先安装rar解压工具,再进行Crack文件解压
命令:
sudo apt install rar
rar x Matlab\ 2016b\ Linux64\ Crack.rar
注意:解压后Crack文件夹中包含readme.txt文件,里面包含密钥,license_standalone.lic文件,用于进行软件激活,/bin/glnx64/文件,用于进行matlab安装目录中bin/glnx64/的替换,里面工四个文件。
2、挂载:首先建立挂载文件夹,本文为/home/generalloc/matlab2016,然后用mount命令进行R2016b_glnxa64_dvd1.iso文件挂载,注意当前只挂载R2016b_glnxa64_dvd1.iso文件,R2016b_glnxa64_dvd2.iso先不要进行挂载。
命令:
mkdir /home/generalloc/matlab2016  #挂载目录
sudo mount -t auto -o loop /home/generalloc/下载/matlab/R2016b_glnxa64_dvd1.iso /home/generalloc/matlab2016

注意:/home/generalloc/下载/matlab/为下载的linux版本MATLAB2016文件目录,/home/generallc/matlab2016为指定的挂载目录
3、安装:进入到挂载目录下,可以发现有install文件,然后返回当前目录的前一层进安装
命令:
cd /home/generalloc/matlab2016   #进入到挂载目录下,可以看到install文件
cd ..  #返回上一层目录
sudo /home/generalloc/matlab2016/install  # 进行安装、弹出安装界面,类似windows安装,安装密钥在Crack文件中的readme.txt中
注意:记住matlab安装目录,本文为/home/generalloc/MATLAB2016

4、安装R2016b_glnxa64_dvd2.iso
当R2016b_glnxa64_dvd1.iso安装完成后,提示拔出dvd1,然后插入dvd2对话框,(先不要按“确定”)此时需要挂载第二个iso文件(R2016b_glnxa64_dvd2.iso)到/home/generalloc/matlab2016文件夹下,这里注意的是,由于你当时的终端窗口正在 进行安装,所以你是无法进行操作的,所以你需要ctrl+Alt+t进行重新开一个终端命令窗口。挂载成功后点击刚才的对话框中的“确定”就可以了。
命令:
ctrl+Alt+t  #新建窗口
sudo mount -t auto -o loop /home/generalloc/下载/matlab/R2016b_glnxa64_dvd2.iso /home/generalloc/matlab2016

5、激活:安装完成后,进入/home/generalloc/MATLAB2016/bin 目录下,运行matlab文件,弹出激活对话框,选择用不联网的方法进行激活。然后用用下载目录中/bin/glnx64/的四个文件替换matlab安装目录中bin/glnx64/里面文件。
命令:license文件加载
cd /usr/local/MATLAB/R2016b/bin #进入到matlab安装文件中
./matlab       #运行matlab,弹出激活对话框,选择用不联网的方法进行激活,加载license_standalone.lic文件
注意:本文激活过程中,出现了权限不足问题,采用chomd命令提高对license_standalone.lic文件和安装目录R2016b的权限
cd /home/generalloc/MATLAB/R2016b/  #进入到挂载目录中
sudo chmod 777 license_standalone.lic  #提高对license_standalone.lic文件的操作权限
cd /usr/local/MATLAB #进入到matlab安装文件中
sudo chmod -R 777 R2016b/  #提高对安装目录R2016b的操作权限
命令:文件替换,用下载目录中/bin/glnx64/的四个文件替换matlab安装目录中bin/glnx64/里面文件。

sudo cp /home/generalloc/下载/matlab/R2016b/bin/glnxa64/libmwservices.so /usr/local/MATLAB/R2016b/bin/glnxa64
sudo cp /home/generalloc/下载/matlab/R2016b/bin/glnxa64/libmwlmgrimpl.so /usr/local/MATLAB/R2016b/bin/glnxa64
sudo cp /home/generalloc/下载/matlab/R2016b/bin/glnxa64/libinstutil.so /usr/local/MATLAB/R2016b/bin/glnxa64
sudo cp /home/generalloc/下载/matlab/R2016b/bin/glnxa64/libcufft.so.7.5.18 /usr/local/MATLAB/R2016b/bin/glnxa64
注意:文中的三个目录:
matlab2016b下载目录: /home/generalloc/下载/matlab
挂载目录: /home/generalloc/matlab2016
安装目录: /usr/local/MATLAB
********************************CASE 1 end ***********************************


******************************case 2 start ************************************
1.环境
(1). Ubuntu x64系统
(2). Matlab  R2015b_glnxa64.iso,可以从百度网盘下载到:链接:http://pan.baidu.com/s/1dD9F8RJ密码: t8zi
2. Ubuntu安装MATLAB
(0)解压缩
注意查看Matlab_2015b_Linux64_Crack中的readme.txt,里面包含安装所需的许可证文件秘钥,全文摘抄如下(可略过)。
I offer two modes of installation:
1) standalone:
1) standalone:
- Install choosing the option "Use a File Installation Key" and supply the following FIK
aaaaa-bbbbb-ccccc-ddddd-eeeee-xxxxx
- To install Matlab Production Server,using this
aaaaa-bbbbb-ccccc-ddddd-eeeee
- Use license_standalone.lic to activate,
or make a "licenses" folder in %installdir% and copy license_standalone.lic to it,and run matlab without activation
- after the installation finishes copy the folders to %installdir% to overwriting the originally installed files
2)略过(使用(1)的license)
Install Steps
(1).挂载ISO镜像文件
1. $ sudo mkdir /media/matlab
2. $ sudo mount -o loop R2015b_glnxa64.iso /media/matlab
(2).执行安装过程,选择不联网安装,序列号在~/crack/readme.txt文件中。
1. $ cd /media/matlab
2. $ sudo ./install
注:在执行这一步的时候,如果在终端出现如下的错误:
1. Preparing installation files …
2. Installing...
3. Finished
那是因为openjdk这个包没装。
然后装了这个包,具体安装代码如下:
1. sudo add-apt-repository ppa:openjdk-r/ppa
2. sudo apt-get update
3. sudo apt-get install openjdk-8-jdk
安装完openjdk后,在终端执行如下语句进入Matlab安装界面:
1. sudo sh ./install -javadir /usr/lib/jvm/java-8-openjdk-amd64/jre/
(3).安装完毕并且将~/crack/bin/中的文件复制到~/MATLAB/Rxxxx/bin中。
1. $ sudo cp /[Your crackdirectory]/Matlab_R2015b/Matlab_2015b_Linux64_Crack/R2015b/bin/glnxa64/* /usr/local/MATLAB/R2015b/bin/glnxa64
(4).首次运行matlab要用root权限(否则无法写文件),采用不联网激活,并找到Crack中相应的激活文件*.lic,导入激活。
1. $ cd /usr/local/MATLAB/R2015b/bin
2. $ sudo ./matlab
(5).卸载ISO镜像。
1. $ sudo umount /media/matlab
(6).添加桌面快捷方式。
终端输入如下命令:
1. $ sudo apt-get install matlab-support

添加matlab的安装目录为/usr/local/MATLAB/R2015b/

之后就按照提示进行,结束之后,在终端输入
1. $ sudo matlab
就可以启动matlab了。
*****************************case 2 end*****************************************

×××××××××××××××××××××××××case 3 start××××××××××××××××××××××××××××××
安装MATLAB2014a(网上的方法,亲测可用)
使用方法:
1.首先下载MATLAB 2017b linux版安装包,网上资源比较多,就不列举了。
下载完成后,在终端执行以下命令,挂载MATLAB安装镜像文件并安装。
sudo mkdir ./matlab
sudo mount -t auto -o loop  [YOUR_PATH]/Linux/R2017b_glnxa64.iso matlab/
cd ./matlab
sudo  ./install
2.安装过程中会让选择安装方法,这里最好先断开网络,然后选择“使用文件安装密钥(不需要Internet连接)”。文件安装密钥在Crack目录下的Readme.txt里,是一个串20位的数字。相应地接下来还要选择Crack目录下.lic文件作为license。在安装过程中要将“创建指向以下位置中的MATLAB脚本的符号链接”选项打勾。下面就等待安装完成就行了。
3.安装完成后,选择“不使用Internet手动激活”。需要输入许可证文件.lic的完整路径,这里选择Crack目录下的.lic就可以了。
4.将Crack/Linux文件夹下的libmwservices.so 复制到到 /usr/local/MATLAB/R2017b/bin/glnxa64
                            。(最好在终端中执行sudo cp [libmwservices.so的路径]/libmwservices.so /usr/local/MATLAB/R2017b/bin/glnxa64,直接复制可能会有权限问题)这时应该就可以通过sudo matlab打开MATLAB软件了。下两步是可选的。
5.(可选)安装MATLAB支持包'sudo apt-get install matlab-support'。中间可选使用这款软件的用户以及重命名GCC库,原文教程中说可以忽略。我把当前用户作为了使用这款产品的用户。
6.(建议选择)为了避免每次都用root权限打开matlab,通过sudo chown [your ubuntu username] -R ~/.matlab改变权限。最终直接在终端输入matlab就可以打开MATLAB了,至此完成了MATLAB在Ubuntu下的安装和破解。                        
×××××××××××××××××××××××××case 3 end ××××××××××××××××××××××××××××××






%%%%%%%%%%%%%%%%%如果需要卸载matlab%%%%%%%%%%%%%%%%%%%%

卸载matlab:
1.在终端运行sudo rm -rf /opt/matlab(改成你自己的matlab路径)删除matlab文件夹。
2.在/home/user(你的用户名)下面有.matlab 文件夹,删之这是一个隐藏文件夹,先要显示隐藏文件,才看得见。
    命令:ls -a
3.如果桌面有matlab快捷方式的话,把它删掉,
   运行 :
           sudo remove /usr/share/application/matlab.desktop删除/usr/share/application /matlab.desktop,这里matlab.desktop改成你自己安装时起的名字。



9、编译caffe
8.1 编译主程序
终于完成了所有环境的配置,可以愉快的编译Caffe了! 进入caffe根目录, 首先复
制一份Makefile.config, 然后修改里面的内容,主要需要修改的参数包括(见附录)
CPU_ONLY 是否只使用CPU模式,没有GPU没安装CUDA的同学可以打开这个选项
BLAS (使用intel mkl还是atlas)
MATLAB_DIR 如果需要使用MATLAB wrapper的同学需要指定matlab的安装路径, 如我的
路径为 /usr/local/MATLAB/R2014a/ (注意该目录下需要包含bin文件夹,bin文件夹里
应该包含mex二进制程序)

DEBUG 是否使用debug模式,打开此选项则可以在eclipse或者NSight中debug程序
完成设置后, 开始编译
make all -j4
make test
make runtest
注意 -j4 是指使用几个线程来同时编译, 可以加快速度, j后面的数字可以根据CPU
core的个数来决定, 我的CPU使4核, 所以-j4.

××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
运行make runtest 时出现错误:
“error while loading shared libraries: libcudart.so.8.0: cannot open shared object file: No such file or directory”

解决方案:(https://www.cnblogs.com/Anker/p/3209876.html)
error while loading shared libraries: xxx.so.x" 错误的原因和解决办法
今天在执行一个protobuf程 序时,提示error while loading shared libraries: libprotobuf.so.8: cannot open shared object file: No such file or directory错误。google了一下,是由于找不到lib这个文件。
解决办法:
一般我们在Linux下执行某些外部程序的时候可能会提示找不到共享库的错误, 比如:
 
tmux: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory

原因一般有两个, 一个是操作系统里确实没有包含该共享库(lib*.so.*文件)或者共享库版本不对, 遇到这种情况那就去网上下载并安装上即可.

另外一个原因就是已经安装了该共享库, 但执行需要调用该共享库的程序的时候, 程序按照默认共享库路径找不到该共享库文件.

所以安装共享库后要注意共享库路径设置问题, 如下:

1) 如果共享库文件安装到了/lib或/usr/lib目录下, 那么需执行一下ldconfig命令

ldconfig 命令的用途, 主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下, 搜索出可共享的动态链接库(格式如lib*.so*), 进而创建出动态装入程序(ld.so)所需的连接和缓存文件. 缓存文件默认为/etc/ld.so.cache, 此文件保存已排好序的动态链接库名字列表.

2) 如果共享库文件安装到了/usr/local/lib(很多开源的共享库都会安装到该目录下)或其它"非/lib或/usr/lib"目录下, 那么在执行ldconfig命令前, 还要把新共享库目录加入到共享库配置文件/etc/ld.so.conf中, 如下:

# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
# echo "/usr/local/lib" >> /etc/ld.so.conf
# ldconfig

3) 如果共享库文件安装到了其它"非/lib或/usr/lib" 目录下,  但是又不想在/etc/ld.so.conf中加路径(或者是没有权限加路径). 那可以export一个全局变量LD_LIBRARY_PATH, 然后运行程序的时候就会去这个目录中找共享库.

LD_LIBRARY_PATH的意思是告诉 loader在哪些目录中可以找到共享库. 可以设置多个搜索目录, 这些目录之间用冒号分隔开. 比如安装了一个mysql到/usr/local/mysql目录下, 其中有一大堆库文件在/usr/local/mysql/lib下面, 则可以在.bashrc或.bash_profile或shell里加入以下语句即可:

export LD_LIBRARY_PATH=/usr/local/mysql/lib:$LD_LIBRARY_PATH

一般来讲这只是一种临时的解决方案, 在没有权限或临时需要的时候使用.

×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××



Ubuntu14.04下安装protobuf 2.6.1
1、下载protobuf
2、安装protobuf
tar -zxvf protobuf-2.6.1.tar.gz # 解压

sudo apt-get install build-essential # 不装会报错

cd protobuf-2.6.1/ # 进入目录

./configure # 配置安装文件

make # 编译

make check # 检测编译安装的环境

sudo make install # 安装

3、检查是否安装成功
protoc --version
若显示成功,则显示  libprotoc 2.6.1

可能会出现错误或者还是显示的老版本号,错误原因:protobuf的默认安装路径是/usr/local/lib,而/usr/local/lib不在ubuntu体系默认的LD_LIBRARY_PATH里,所以就找不到lib
解决办法:
1、执行命令:
nano ~/.profile # 打开配置文件
在文件最后添加:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
2.保存退出,并执行下面命令
source ~/.profile
3.然后,查看版本号
protoc --version


问题:错误:libcurl.so.4: no version information available (required by /usr/bin/cmake)

解决方法:
1. 先用locate定位库的信息:
命令:locate libcurl.so.4
出现:
/home/aa/anaconda2/lib/libcurl.so.4
/home/aa/anaconda2/lib/libcurl.so.4.5.0
/home/aa/anaconda2/pkgs/libcurl-7.58.0-h1ad7b7a_0/lib/libcurl.so.4
/home/aa/anaconda2/pkgs/libcurl-7.58.0-h1ad7b7a_0/lib/libcurl.so.4.5.0
/usr/lib/x86_64-linux-gnu/libcurl.so.4
/usr/lib/x86_64-linux-gnu/libcurl.so.4.3.0
/usr/local/MATLAB/R2014a/bin/glnxa64/libcurl.so.4
/usr/local/MATLAB/R2014a/bin/glnxa64/libcurl.so.4.2.0
/usr/local/MATLAB/R2015b/bin/glnxa64/libcurl.so.4
/usr/local/MATLAB/R2015b/bin/glnxa64/libcurl.so.4.3.0
/usr/local/MATLAB/R2015b/toolbox/compiler_sdk/mps_clients/c/glnxa64/lib/libcurl.so.4
/usr/local/MATLAB/R2015b/toolbox/compiler_sdk/mps_clients/c/glnxa64/lib/libcurl.so.4.3.0
2、可以用ls -l 来查看链接
命令:ls -l /home/aa/anaconda2/lib/libcurl.so.4
出现:lrwxrwxrwx 1 aa aa 16  4月 12 21:10 /home/aa/anaconda2/lib/libcurl.so.4 -> libcurl.so.4.5.0

通常的做法是两步:删除软链接和重建软链接:
命令:
sudo rm -rf /usr/lib/x86_64-linux-gnu/libcurl.so.4
sudo ln -s /home/aa/anaconda2/pkgs/libcurl-7.58.0-h1ad7b7a_0/lib/libcurl.so.4.5.0 /usr/lib/x86_64-linux-gnu/libcurl.so.4
再查看一下链接:
命令:ls -l /usr/lib/x86_64-linux-gnu/libcurl.so.4
结果:lrwxrwxrwx 1 root root 70  4月 16 10:21 /usr/lib/x86_64-linux-gnu/libcurl.so.4 -> /home/aa/anaconda2/pkgs/libcurl-7.58.0-h1ad7b7a_0/lib/libcurl.so.4.5.0


试了一下还是不行,查了一下资料:
(https://askubuntu.com/questions/699864/torch7-installation-issues-on-14-04)
命令:mv ~/anaconda2 ~/anaconda2_tmp
命令:curl -sk https://raw.githubusercontent.com/torch/ezinstall/master/install-luajit+torch | PREFIX=~/torch bash
然后就可以了,虽然不知道为什么。。。



问题:在运行import caffe时,出现问题:RuntimeError: module compiled against API version 0xc but this version of numpy is 0x9
解决方案1:进入python下:
查看numpy的路径:
命令: print numpy.__path__
然后执行:
命令: sudo mv /usr/lib/python2.7/dist-packages/numpy /usr/lib/python2.7/dist-packages/numpy_old  

然后执行import caffe成功。(亲测)

解决方案2:在代码中进行 import caffe 后报错ImportError:No module named caffe,可能就是路径的问题了
在代码中添加:
import sys
sys.path.append("/home/aaa/caffe/python")
sys.path.append("/home/aaa/caffe/python/caffe")
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
问题:运行项目报错: module compiled against API version 0xa but this version of numpy is 0x9
https://blog.csdn.net/chenlin1989/article/details/77010797
步骤:(升级系统自带的numpy)
sudo easy_install -U numpy  
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
解决问题ImportError: cannot import name symbol_database
https://blog.csdn.net/aBlueMouse/article/details/77744023
步骤:
我在我下的2.6.1版本的protobuf文件夹下依次按照步骤执行:
tar zxvf protobuf-2.6.1.tar.gz
cd protobuf-2.6.1
./configure
make
make check
make install
cd python
python setup.py build
python setup.py test
python setup.py install
执行完后会在 protobuf-2.6.1/python 文件夹下出现一个google的文件夹,将这个文件夹用管理员的方式复制到/usr/lib/python2.7/dist-packages下,也就是上面说的protobuf的位置,然后我的问题就解决了
×××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××





出现错误:
build_release/src/caffe/proto/caffe.pb.h:17:2: error: #error This file was generated by an older version of protoc which is
 #error This file was generated by an older version of protoc which is
  ^
./.build_release/src/caffe/proto/caffe.pb.h:18:2: error: #error incompatible with your Protocol Buffer headers. Please
 #error incompatible with your Protocol Buffer headers.  Please
解决办法:
参考办法:
I solved this on my computer and maybe it can help you. My environment is Ubuntu16.04, and I installed Anaconda(for python2.7) before I install Caffe. It happens that I used conda to install libprotobuf-dev, and this leads to conflict with the caffe's 'sudo apt-get install libprotobuf-dev' command, for 'apt-get' and conda installed different on my computer which can be find by 'locate protobuf', so I remove the Anaconda's version of libprotobuf, and no problem happens again.
conda uninstall libprotobuf
When you install tensorflow before install Caffe, this problem will also happen, because of the libprotobuf conflict.
我在试了很多方法之后,这样运行了,发现成功了。


你可能感兴趣的:(Ubuntu,深度学习(配置和环境))