在ubuntu上安裝Cmake、opencv2.4.9、PCL1.8、g2o

ubuntu上安裝Cmakeopencv2.4.9PCL1.8g2o

 

本教程用到的軟件和工具可以在百度網盤下直接下載(想下載別的版本的下面也有官網下載鏈接):

鏈接:http://pan.baidu.com/s/1bLtXx0 密碼:3x98

 

 

一、Cmake的安裝

 

官網下載Cmake:https://cmake.org/download/

 

1、把cmake-3.8.1.tar.gz壓縮包放到想放到的目錄(Cmake的安裝路徑默認在:/usr/local/),然後解壓,解壓命令:sudo  tar -zxvf cmake-3.8.1.tar.gz

2、進入Cmake文件夾:cd cmake-3.8.1

3、執行 sudo ./bootstrap   如果出現如下錯誤提示

Error when bootstrapping CMake Cannot find appropriate C++ compiler on this system Please specify one using environment variable CXX

則執行: sudo apt-get install  build-essential 安裝gcc-c++,然後再從新執行步驟3的命令

4、執行sudo make

5、執行 sudo make install

6、執行 cmake --version(注意cmake--中間有空格)如果輸出Cmake的版本則說明安裝成功

cmake version 3.8.1

CMake suite maintained and supported by Kitware (kitware.com/cmake).

 

二、OpenCV的安裝

官網下載OpenCV源代碼:https://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.4.9/opencv-2.4.9.zip/download

 

a、配置依賴項

安裝opencv前,需要先安裝依賴項,執行:

 

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev libtiff4-dev cmake libswscale-dev libjasper-dev

 

在這裏我遇到了報錯:

 

正在讀取軟件包列表... 完成

正在分析軟件包的依賴關係樹       

正在讀取狀態信息... 完成       

有一些軟件包無法被安裝。如果您用的是 unstable 發行版,這也許是

因爲系統無法達到您要求的狀態造成的。該版本中可能會有一些您需要的軟件

包尚未被創建或是它們已被從新到(Incoming)目錄移出。

下列信息可能會對解決問題有所幫助:

 

下列軟件包有未滿足的依賴關係:

build-essential : 依賴: libc6-dev 但是它將不會被安裝 或

                           libc-dev

                   依賴: gcc (>= 4:4.4.3) 但是它將不會被安裝

                   依賴: g++ (>= 4:4.4.3) 但是它將不會被安裝

libgtk2.0-dev : 依賴: libglib2.0-dev (>= 2.27.3) 但是它將不會被安裝

                 依賴: libgdk-pixbuf2.0-dev (>= 2.21.0) 但是它將不會被安裝

                 依賴: libpango1.0-dev (>= 1.20) 但是它將不會被安裝

                 依賴: libatk1.0-dev (>= 1.29.2) 但是它將不會被安裝

                 依賴: libcairo2-dev (>= 1.6.4-6.1) 但是它將不會被安裝

                 依賴: libxrandr-dev (>= 2:1.2.99) 但是它將不會被安裝

 libtiff4-dev : 依賴: libtiff5-dev (> 4.0.3-6~) 但是它將不會被安裝

 

E: 無法修正錯誤,因爲您要求某些軟件包保持現狀,就是它們破壞了軟件包間的依賴關係。

 

這些報錯表示有些依賴庫沒有安裝或者版本和需要的版本不一樣,需要安裝:

第一個build-essential的依賴問題,分別執行:

sudo aptitude update

sudo aptitude install build-essential

第二個libgtk2.0-dev依賴問題,執行:

sudo aptitude install libgtk2.0-dev

第三個libtiff4-dev依賴問題,網上博客說,執行這個命令:

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg62-dev cmake libswscale-dev libjasper-dev

 

b、編譯opencv

 

1、執行 cmake .

2、執行 make

3、執行 sudo make install

4、下面配置library,打開/etc/ld.so.conf.d/opencv.conf,在末尾加入/usr/local/lib    (有可能是個空文件,沒關係)

5、執行 sudo ldconfig

6、然後編輯/etc/bash.bashrc   加入

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

export PKG_CONFIG_PATH

 

 

至此,opencv安裝配置完畢,下面開始測試

 

---------------------------------------------------------------------------------------------

在一個目錄下放置一張圖片,命名爲0.jpg, 再新建一個show.cpp文件,添加如下代碼:

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
using namespace cv;
using namespace std;
int main(int argc, char **argv)
{
    Mat img;
    img = imread(argv[1], 1);
if (argc != 2 || !img.data) {
        cout<<"No image data.\n"<<endl;
        return -1;
    }
namedWindow("Display Image", CV_WINDOW_AUTOSIZE);
    imshow("Display Image", img);
    waitKey(0);
    return 0;
}

再新建一個CMakeLists.txt,添加如下內容:

 

cmake_minimum_required(VERSION 2.8)

project(opencvtest)

find_package( OpenCV REQUIRED )

add_executable( opencvtest opencvtest.cpp )

target_link_libraries( opencvtest ${OpenCV_LIBS} )

 

進入這個文件夾下,執行

cmake ..

Make

./ opencvtest  0.jpg

 

此時就可以看到打開的圖片了。


三、PCL安裝

 

githubPCL1.8源碼:https://github.com/PointCloudLibrary/pcl

 

1、執行 sudo add-apt-repository ppa:v-launchpad-jochen-sprickerhof-de/pcl

2、執行 sudo apt-get update

3、執行 sudo apt-get install libpcl-all

 

PCL安裝完成!

 

 


四、g2o安裝

 

githubg2o源碼:https://github.com/RainerKuemmerle/g2o

 

a、安裝依賴項

 

執行 sudo apt-get install libeigen3-dev libsuitesparse-dev libqt4-dev qt4-qmake libqglviewer-qt4-dev

 

b、解壓g2o並編譯安裝:

 

1、執行 mkdir build

2、執行 cd build

3、執行 cmake ..

4、執行 make

5、執行 sudo make install

 

g2o安裝完成!

安裝成功後,可以在/usr/local/include/g2o中找到它的頭文件,而在/usr/local/lib中找到它的庫文件

 

 

 

 參考博客:

Cmake: http://blog.csdn.net/wz3118103/article/details/39826397

OpenCV:http://www.linuxidc.com/Linux/2016-07/132879.htm

PCL:http://blog.csdn.net/zs1503/article/details/51079506

g2o:http://blog.csdn.net/yoouzx/article/details/53083496?locationNum=2&fps=1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發佈了25 篇原創文章 · 獲贊 16 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章