ubuntu16.04 JetsonTX2安装
- Host软件的安装
- 1.安装Cuda9.0
- 2.安装 tensorrt 4.0
- 3.安装pycuda for tensorrt
- 4.安装bazel 0.15.0
- 5. 安装cmake
- 6. 安装支持tensorrt的tensorflow 的GPU版本
- 8. Install Tensorflow cpp for build with cmake
- 9. 安装Install protobuf 3.6.0
- 10. Install Eigen3 library
- 11. how to install openCv3.4
- 12. how to remove oldOpenCvVersion 没用环境会崩掉
- solve protobuf version Problem
- 13.Compile cmake project: jetson-workspace.
- TX2环境搭建
Host软件的安装
主机需要安装的软件列表有Cuda / Tensorrt / Tensorflow GPU/OpenCv/cmake。安装以上软件需要有NvidiaGPU的支持,如果没有。可以安装没有GPU的版本
1.安装Cuda9.0
可以参考这个英文链接
-
更新显卡驱动
#自动更新显卡驱动,更新后可能会出现只有独显插口的显示屏才能亮 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update
检查显卡驱动是否更新
打开ubuntu右上角设置-> about this computer
如果出现了显卡型号说明显卡已经更新
如果没有更新
打开系统设置->软件更新->附加驱动->更新为Nvdia的驱动 -
安装 cuda,先到cuda官网下载cuda9.0的安装包。由于jetson-x2软件的安装包的cuda型号为9.0所以为保证一致性,也要安装cuda9.0
sudo dpkg -i cuda- #小技巧终端输入命令时可以用tab补全文件名 sudo apt-key add /var/cuda- "autofill with tab" /7fa2af80.pub sudo apt-get update sudo apt-get install cuda
-
link cuda to bash. //很多软件都需要这个步骤
sudo nano ~/.bashrc
打开vi编辑器(只能用键盘操作),用键盘移动到最后一行,加入以下两行代码
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
nvcc -V //查看cuda版本
2.安装 tensorrt 4.0
参考这个链接
- 下载nv-tensorrt-repo-ubuntu1604-cuda9.0-ga-trt4.0.1.6-20180612_1-1_amd64.deb 的deb安装包
- 终端输入以下代码
sudo dpkg -i nv-tensorrt "autofill with tab" .deb sudo apt-key add /var/nv-tensorrt "autofill with tab" /7fa2af80.pub sudo apt-get update //不更新可能会报错 sudo apt-get install tensorrt
3.安装pycuda for tensorrt
没有安装pip可以参考终端报错安装pip ·教程
pip install 'pycuda>=2017.1.1'
4.安装bazel 0.15.0
install bazel 0.15.0 with binary installer,
参考教程
sudo apt-get install pkg-config zip g++ zlib1g-dev unzip python
chmod +x bazel-<version>-installer-linux-x86_64.sh #前提已经下载安装包到本地,改变文件运行权限
./bazel-<version>-installer-linux-x86_64.sh --user
cd ~
gedit .bashrc #最后两行加入下面两句话
source /home/lilanluo/.bazel/bin/bazel-complete.bash
export PATH="$PATH:$HOME/bin"
#更新
source ~/.bashrc
5. 安装cmake
cmake用于编译执行C++软件,安装openCv也需要cmake
参考官方教程
- 下载 cmake-version.zip 本教程使用的是cmake-3.13.4
unzip cmake-version.zip cd cmake-folder ./bootstrap make make install
6. 安装支持tensorrt的tensorflow 的GPU版本
参考教程
- 安装支持包
sudo apt-get install git python-dev python3-dev build-essential swig libcurl3-dev libcupti-dev golang libjpeg-turbo8-dev make tmux htop cmake zlib1g-dev libjpeg-dev xvfb libav-tools xorg-dev python-opengl libboost-all-dev libsdl2-dev apt-transport-https ca-certificates curl software-properties-common coreutils mercurial libav-tools libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsmpeg-dev libsdl1.2-dev libportmidi-dev libswscale-dev libavformat-dev libavcodec-dev libtiff5-dev libx11-6 libx11-dev fluid-soundfont-gm timgm6mb-soundfont xfonts-base xfonts-100dpi xfonts-75dpi xfonts-cyrillic fontconfig fonts-freefont-ttf wget unzip git nasm tar libbz2-dev libgtk2.0-dev libfluidsynth-dev libgme-dev libopenal-dev timidity libwildmidi-dev python-pip python3-pip python-wheel python3-wheel python-virtualenv #如果中途报错error则 sudo apt-get update //更新资源包后再执行一遍上述命令
- 安装numpy等支持包
pip3 install -U --user keras_applications==1.0.6 --no-deps pip3 install -U --user keras_preprocessing==1.0.5 --no-deps pip3 install numpy
- 用git 下载源码
期间终端的应答参考教程即可,基本都是enter就好cd ~ git clone --single-branch -b v1.10.0 https://github.com/tensorflow/tensorflow cd ~/tensorflow git checkout v1.10.0 ./configure
./configure需要的步骤主要是
1. python -/usr/bin/python3
2. cuda9.0 -yescuda9.0 -yes
3. cudadnn -7.1
4. NCCL -1.3
5. note:: 如果cuDNN报错,原因可能是tensorrt没装好,可以再运行一次以下两个步骤
- bazel build
bazel build --config=opt --config=cuda //tensorflow/tools/pip_package:build_pip_package #如果报错,尝试bazel clean 后再执行一遍上述步骤 bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg/ pip3 install /tmp/tensorflow_pkg/tensorflow-1.10.0-cp35-cp35m-linux_x86_64.whl
8. Install Tensorflow cpp for build with cmake
参考教程
bazel build //tensorflow:libtensorflow_cc.so \
&& sudo mkdir -p /usr/local/include/google/tensorflow \
&& sudo cp -r bazel-genfiles/* /usr/local/include/google/tensorflow/ \
&& sudo cp -r tensorflow /usr/local/include/google/tensorflow/ \
&& sudo find /usr/local/include/google/tensorflow -type f ! -name "*.h" -delete \
&& sudo cp -r third_party /usr/local/include/google/tensorflow/ \
&& sudo cp bazel-bin/tensorflow/libtensorflow_cc.so /usr/local/lib \
&& sudo cp bazel-bin/tensorflow/libtensorflow_framework.so /usr/local/lib \
&& cd ..
9. 安装Install protobuf 3.6.0
git clone https://github.com/google/protobuf \
&& cd protobuf \
&& git checkout v3.6.0 \ ###注意一定要3.6的版本
&& ./autogen.sh \ #若提示.autoreconf: not found ,则执行
#sudo apt-get install autoconf automake libtool
#再执行一遍上述程序
&& ./configure --prefix=/usr \
&& sudo make install \
&& cd ..
10. Install Eigen3 library
一. Eigen3库可能已经在 /usr/include/.安装了,如果已经有一个版本了,则执行以下步骤:
这个版本可能是错误的,所以需要被tensorflow路经:/tensorflow/bazel-tensorflow/external/eigen_archive 的正确版本替代。方法:
- 将/tensorflow/bazel-tensorflow/external/eigen_archive 文件复制到 cd/home/lukas and rename it manually to "eigen3"
- 删除/usr/include的错误版本
sudo rm -r /usr/include/eigen3
- 复制正确的版本
sudo cp -r /home/lukas/eigen3 /usr/include
二. 如果eigen3不存在(判断是否存在可以使用)
- 将/tensorflow/bazel-tensorflow/external/eigen_archive 文件复制到 cd/home/lukas and rename it manually to "eigen3"
- 复制正确的版本
sudo cp -r /home/lukas/eigen3 /usr/include
11. how to install openCv3.4
12. how to remove oldOpenCvVersion 没用环境会崩掉
solve protobuf version Problem
13.Compile cmake project: jetson-workspace.
cd jetson-workspace
cmake CMakeLists.cmake
make
RUN DEMO APPLICATIONS
ATTENTION: TO RUN camera_test with BuildIn Camera install OPENCV3.4.0 with GStreamer 1.0 Support!
src: https://www.jetsonhacks.com/2018/05/28/build-opencv-3-4-with-cuda-on-nvidia-jetson-tx2/
TX2环境搭建
1. 刷机
刷机教程
刷机后板子会装好CUDA / TENSORRT
2. 安装GPU版本的TensorFlow
bash install_tensorflow_on_jetson.sh
bash BuildTensorflow.sh -b v1.10.1 -p python3
./InstallandClean.sh
3. 移动bazel
sudo cp /home/nvidia/JetsonTFBuild/bazel /usr/local/bin
Install Tensorflow cpp for build with cmak
cd JetsonTFBuild/tensorflow
bazel build //tensorflow:libtensorflow_cc.so \
&& sudo mkdir -p /usr/local/include/google/tensorflow \
&& sudo cp -r bazel-genfiles/* /usr/local/include/google/tensorflow/ \
&& sudo cp -r tensorflow /usr/local/include/google/tensorflow/ \
&& sudo find /usr/local/include/google/tensorflow -type f ! -name "*.h" -delete \
&& sudo cp -r third_party /usr/local/include/google/tensorflow/ \
&& sudo cp bazel-bin/tensorflow/libtensorflow_cc.so /usr/local/lib \
&& sudo cp bazel-bin/tensorflow/libtensorflow_framework.so /usr/local/lib \
&& cd ..
4. 安装Cmake3.13.4
下载安装包,解压, 以.tar.gz
结尾的安装包为源码,然后可以用下面的命令在TX2进行编译:
./bootstrap
make
make install
5. 安装protobuf 3.6.0```python
git clone https://github.com/google/protobuf \
&& cd protobuf \
&& git checkout v3.6.0 \
&& ./autogen.sh \
&& ./configure --prefix=/usr \
&& sudo make install \
&& cd ..
6. 安装Eigen3lib
- 参考host机改路径即可
- 考虑到可能在
/usr/include/
已经有eigen3的了。但是这个 版本需要被/tensorflow/bazel-tensorflow/external/eigen_archive
替换
- 从
tensorflow/bazel-tensorflow/external/eigen_archive
复制到/home/Nvidia
并且重命名为eigen3
- 删除/usr/include的错误版本
sudo rm -r /usr/include/eigen3
- 复制正确的版本
sudo cp -r /home/Nvidia/eigen3 /usr/include
7. 安装openCV3.4.0
参考host机
8. 编译执行
参考host机子