1. 程式人生 > >CenOS7 原始碼安裝CMAKE3.12.0

CenOS7 原始碼安裝CMAKE3.12.0

本文是關於cmake 3.12.0 在CenOS7下的安裝。

1、安裝cmake必要的程式Package:

yum install -y gcc gcc-c++ make automake 

2、wget的安裝(為了下載cmake原始碼):

yum install -y wget

3、使用wget下載CMake原始碼:

wget https://cmake.org/files/v3.12/cmake-3.12.0-rc1.tar.gz

4、解壓:

tar -zxvf cmake-3.12.0-rc1.tar.gz

5、進入解壓之後的CMake原始碼目錄:

cd cmake-3.12.0-rc1

6、執行configue檔案:

./configure

如果上面的語句沒有出現問題,請直接執行第7步驟,如果出現以下的錯誤(.so連結錯誤),請參照以下解決:

可能出現的錯誤1:

敲重點的時候:如果這一步你沒有執行成功,而是出現了類似以下的Error的話,重點看這裡:

-- Found ZLIB: /home/machao/anaconda3/lib/libz.so (found version "1.2.8") 
-- Found OpenEXR: /usr/lib/x86_64-linux-gnu/libIlmImf.so
CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfig.cmake:27 (message):
  The imported target "Qt5::Gui" references the file

     "/usr/lib/x86_64-linux-gnu/libEGL.so"

  but this file does not exist.  Possible reasons include:

  * The file was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and contained

     "/usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake"

  but not all the files it references.

Call Stack (most recent call first):
  /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:50 (_qt5_Gui_check_file_exists)
  /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:72 (_qt5gui_find_extra_libs)
  /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfig.cmake:158 (include)
  cmake/OpenCVFindLibsGUI.cmake:19 (find_package)
  CMakeLists.txt:535 (include)

解決方法(刪除原有的so連結,重新建立連結關係):

刪除原有的so連結

sudo rm /usr/lib/x86_64-linux-gnu/libEGL.so

重新建立連結關係:

sudo ln /usr/lib/x86_64-linux-gnu/libEGL.so.1 /usr/lib/x86_64-linux-gnu/libEGL.so

可能出現的Error2:

本人當時安裝的時候提示的是類似以下的error:

CMake Error at /usr/home/anaconda3/cmake/Qt5Gui/Qt5GuiConfig.cmake:27 (message):
  The imported target "Qt5::Gui" references the file

     "/usr/lib64/libEGL.so"

  but this file does not exist.  Possible reasons include:

  * The file was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and contained

     "/usr/home/anaconda3/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake"

這種解決方法類似上面:

刪除原有的so連結:

sudo rm /usr/lib64/libEGL.so;

重新建立連結關係:

sudo ln /usr/lib64/libEGL.so.1 /usr/lib64/libEGL.so

7、編譯工程:

gmake

8、安裝編譯之後的cmake工程

gmake install

9、測試是否安裝成功:

cmake --version

如果出現cmake版本資訊,則正確安裝了。