ubuntu安裝QGIS(二)

安裝編譯環境

開始之前,先選擇一個速度較快的安裝源,然後按照下面步驟進行操作
首先安裝gcc和g++編譯器環境,同時安裝ccache

sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install ccache

創建鏈接到/usr/local/bin目錄

cd /usr/local/bin
sudo ln -s /usr/bin/ccache gcc
sudo ln -s /usr/bin/ccache g++

使用git獲取源碼

首先創建源碼存放目錄

mkdir -p ${HOME}/dev/cpp
cd ${HOME}/dev/cpp

按照需求同步源碼

  • Anonymous Checkout
cd ${HOME}/dev/cpp
git clone git://github.com/qgis/QGIS.git
  • Developer Checkout
cd ${HOME}/dev/cpp
git clone [email protected]:qgis/QGIS.git

如果不能使用git指令,使用sudo apt-get install git安裝git工具

編譯源碼

cd QGIS
mkdir build-master
cd build-master
ccmake ..

執行ccmake ..以後會出現配置界面,配置相關的編譯參數和一些依賴項目錄。
進入配置界面以後,按c鍵檢查配置信息,配置錯誤信息可以參考文章底部的 QAQ

在配置界面按 ‘c’ 檢查配置,並根據提示錯誤修改相關係統配置,直到不提示錯誤爲止,此時按下鍵盤上的 ‘g’ 生成makefile以及相關內容

下面是一些參數配置說明

  • CMAKE_INSTALL_PREFIX 編譯完成後的軟件安裝目錄,如果不想安裝到默認/usr/bin目錄下,可以創建自己目錄mkdir -p ${HOME}/apps,並設置該項屬性爲${HOME}/apps
  • CMAKE_BUILD_TYPE 如果想要編譯完成後的代碼輸出調試信息,可以設置爲Debug,不過博主設置爲Debug以後在代碼編譯到10%左右的時候報錯

編譯並生成可執行程序

make   // or make -j8
sudo make install

注: make時可使用多核同時處理,相關指令類似 make -j8, 其中數字爲計算機處理器核數


QAQ

1.提示GDAL版本太低

CMake Warning at cmake/FindGDAL.cmake:114 (MESSAGE):
GDAL version is too old (1.10.1) to support GeoPackage. 1.11.0 or higher
is recommended.
Call Stack (most recent call first):
CMakeLists.txt:199 (FIND_PACKAGE)

解決方法:
手動安裝高版本gdal, url: http://download.osgeo.org/gdal/
此處選擇的爲1.11.0版本gdal-1.11.0.tar.gz,程序安裝完成以後,在目錄/usr/local/bin

cd ~/Downloads/
tar -zxvf gdal-1.11.0.tar.gz
cd cd gdal-1.11.0/
./configure
make
sudo make install

如果make時太慢,可以使用make -j8數字根據計算機處理器核數量進行調整

2.找不到qwtpolar目錄

錯誤提示

CMake Error: The following variables are used in this project, but they are
set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake
files:
QWTPOLAR_INCLUDE_DIR
used as include directory in directory /home/itman/dev/cpp/QGIS/src/app
used as include directory in directory /home/itman/dev/cpp/QGIS/src/app
QWTPOLAR_LIBRARY
linked by target “qgis_app” in directory /home/itman/dev/cpp/QGIS/src/app
linked by target “qgis_apppythontest” in directory
/home/itman/dev/cpp/QGIS/tests/src/app
linked by target “qgis_attributetabletest” in directory
/home/itman/dev/cpp/QGIS/tests/src/app
linked by target “qgis_fieldcalculatortest” in directory
/home/itman/dev/cpp/QGIS/tests/src/app
linked by target “qgis_maptoolidentifyaction” in directory
/home/itman/dev/cpp/QGIS/tests/src/app
linked by target “qgis_maptoolselect” in directory
/home/itman/dev/cpp/QGIS/tests/src/app
linked by target “qgis_measuretool” in directory
/home/itman/dev/cpp/QGIS/tests/src/app
linked by target “qgis_qgisappclipboard” in directory
/home/itman/dev/cpp/QGIS/tests/src/app
linked by target “qgis_vectorlayersaveasdialogtest” in directory
/home/itman/dev/cpp/QGIS/tests/src/app

解決方法:
手動安裝qwt安裝包,版本爲6.0.2,URL:https://sourceforge.net/projects/qwt/files/
手動安裝qwtpolar安裝包,版本爲1.0.1,URL:https://sourceforge.net/projects/qwtpolar/files/

下載完成以後,解壓並安裝,安裝以後的目錄在/usr/local下面

qmake 
make
sudo make install

並修改相關配置如下

 QWTPOLAR_INCLUDE_DIR             /usr/local/qwtpolar-1.0.0/include            
 QWTPOLAR_LIBRARY                 /usr/local/qwtpolar-1.0.0/lib/libqwtpolar.so     
 QWT_INCLUDE_DIR                  /usr/local/qwt-6.0.2/include                 
 QWT_LIBRARY                      /usr/local/qwt-6.0.2/lib/libqwt.so 

3.pyuic-wrapper.sh: Permission denied
在編譯到94%左右會提示錯誤,錯誤信息如下

[ 94%] Generating ui_widgetMerge.py
/bin/sh: 1: ../../../../../scripts/pyuic-wrapper.sh: Permission denied
make[2]: * [python/plugins/GdalTools/tools/ui_widgetMerge.py] Error 126

解決方法:
修改文件權限爲777

chmod 777 pyuic-wrapper.sh
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章