一次cmake編譯查錯,cmake重裝

2020-09-03 嘰嘰佩佩

Centos7上面默認cmake版本為2.8.11版本,但是編譯包的時候會報各種奇怪的錯誤。

這裡通過編譯json-c-0.14進行定位,錯誤如下圖所示。

tar xzf json-c-0.14.tar.gzcmake ./json-c-0.14

一直在定位CMakeLists.txt這個文件可能的配置,後來發現同事的機器上可以編譯成功,只是cmake的版本比我的高,於是決定換換版本嘗試一下,果然成功了,過程如下:

yum remove cmakewget https://github.com/Kitware/CMake/releases/download/v3.16.2/cmake-3.16.2.tar.gztar -zxf cmake-3.16.2.tar.gzcd cmake-3.16.2./bootstrap --prefix=/usr --datadir=share/cmake --docdir=doc/cmake && makemake installcmake –versioncmake ./json-c-0.14

相關焦點

  • CMake 入門學習2 使用VSCode cmake插件
    一、準備環境vscodegccgdbcmake新建一個目錄mkdir -p d:/documents/cmake新建一個main.cpp文件:#include設置cmake在命令面板選擇 選擇編譯環境在命令面板選擇
  • Linux CMake 快速使用(一)
    緣起:之前給別人提供的SDK都是在Linux下使用Qt搭建的,但是最近有客戶不使用Qt,而是需要在Linux下使用cmake進行進行文件組織。於是我就進行谷歌,現在將可用的程序記錄下來。平時直接使用IDE開發,所以對整個編譯的過程了解得不深入,藉此機會,在接下來的文章中可能會涉及到程序如何從文本文件到屏幕上的字節流輸出。系統平臺:ubuntu16.04 _x64一、最簡單的CMake編寫1.
  • vscode不寫一行配置,用cmake傻瓜式搭建C++編譯調試環境
    網上看了一些用vscode+cmake搭建C++編譯調試環境的帖子,基本差不多,都要寫一個配置文件。其實根本不用這麼麻煩。安裝的工具是一樣的,但是操作可以更加簡單。VSCode + CMake超簡單用法首先安裝好平臺上的C++編譯器,這裡不多說。
  • Cmake學習總結(三)
    ├── build├── CMakeLists.txt├── include│   ├── test1.h│   └── test2.h└── src├── CMakeLists.txt├── main.c├── test1.c└── test2.c2、編譯運行
  • vs2017下使用Cmake生成源碼編譯錯誤以及解決方法
    錯誤碼提示內容編寫了一個比較大的項目工程,需要使用cmake,但是安裝的v2017進行編譯的時候,卻報了一堆的錯誤:The CXX compiler identification is unknownThe C compiler identification
  • 是不是覺得Makefile很繁瑣,一個cmake文件就可以解決
    linux編譯程序的時候,通常是使用Makefile文件來進行編譯,這個是能夠提高效率的,但是對於大中型的項目,每個文件夾下都需要創建Makefile,並且改變項目目錄結構都需要調整Makefile文件,如果是小型項目的話,那花費的時間還是能夠接受的,但是大中型項目要調整目錄結構,這個工作量還是不小的。所以,我們可以通過使用cmake來解決這樣的問題。
  • 1.2 CMake基礎:hello-headers
    當編譯這個目標時,將使用-I標誌將這些目錄添加到編譯器中,例如-I/directory/path。CMakeFiles/Makefile.cmake 0/usr/bin/cmake -E cmake_progress_start /home/matrim/workspace/cmake-examples/01-basic/hello_headers/build/CMakeFiles /home/matrim/workspace/cmake-examples/01-basic/hello_headers
  • Cmake學習總結(二) - OFweek電子工程網
    大家好,上次給大家分享了第一篇 cmake 文章:cmake學習總結(一),今天繼續給大家分享cmake。那麼廢話就不多說,開始內容分享。/txp/test# ls1               cmake_install.cmake  main.c    test1.h  touch1.cCMakeCache.txt  CMakeLists.txt       Makefile  test2.c  touch1.hCMakeFiles      main                 test1
  • CMake 入門學習1 Hello World
    創建 CMakeLists.txt 文件# Set the minimum version of CMake that can be used# To find the cmake version run# $ cmake --versioncmake_minimum_required(VERSION 3.5)# Set the project nameproject
  • 新的構建系統為CMake
    交叉編譯Qt要使用CMake交叉編譯項目,必須指定一個工具鏈文件。交叉編譯Qt不會為目標平臺生成宿主工具,除非將CMake變量Qt_build_tools_設置為ON。在嵌入式Linux環境中這樣做很有用。
  • 使用mac系統,基於cmake搭建OpenGL環境
    搭建OpenGL環境過程中,也是花費了不少時間,特別是基於cmake來搭建OpenGL的環境,網絡上的資料很少,並且也沒找到成功的例子,因此,這裡將搭建的過程分享出來。希望能夠對大家有一定的參考價值。一、準備條件本文OpenGL環境是在mac系統上搭建,並且採用cmake
  • Visual Studio Code CMake工具擴展兩項更新來了
    如果[cmake.autoSelectActiveFolder]被設置為[false],則你的活動目錄只會在你手動執行[CMake: Select Active Folder]指令時才發生改變。在[CMake: Project Outline]視圖中,還有一些其他配置,編譯,清理,重新編譯和重新配置所有工程的指令。基於文件的API首先,感謝KoeMai提出這個PR!CMake v3.14開始引入了基於文件的API,這一特性可以幫助客戶(類似CMake工具擴展這樣的客戶)獲取CMake生成的)獲取CMake生成的關於底層編譯系統的語義信息。
  • 解鎖新技能,python與cmake結合,實現自動生成工廠類
    基於以上的原因,我們根據頭文件定義的類型,使用python來自動創建工廠類文件,同時,將其集成到cmake。所以,每次頭文件添加新的類型,那麼只需要重新執行cmake來自動更新工廠類文件。生成文件假設有如下所示的頭文件JMsgDefine.h, 一個枚舉值對應一個命令對象,比如接收到E_CMD_ID_LOAD,那麼對應的命令類名為JLoadCmd。
  • 解鎖新技能,python與cmake結合,實現自動生成工廠類
    基於以上的原因,我們根據頭文件定義的類型,使用python來自動創建工廠類文件,同時,將其集成到cmake。所以,每次頭文件添加新的類型,那麼只需要重新執行cmake來自動更新工廠類文件。呢,首先需要說明正則表達式的幾個用法,然後再詳細說明將python集成到cmake的方法。
  • Windows系統安裝CMake教程
    安裝OpenVINO之前需要先安裝Cmake 本文引用地址:http://www.eepw.com.cn/article/202008/416679.htm環境:Windows 64位首先下載CMake官網下載地址:https://cmake.org
  • g++,CMake和Makefile了解一下
    CMake是一個跨平臺的編譯(Build)工具,可以用簡單的語句來描述所有平臺的編譯過程,其是在make基礎上發展而來的,早期的make需要程式設計師寫Makefile文件,進行編譯,而現在CMake能夠通過對cmakelists.txt的編輯,輕鬆實現對複雜工程的組織。下面我帶大家學習下CMake的基礎知識。
  • 學習3D特效前的準備階段:使用mac系統,基於cmake搭建OpenGL環境
    一、準備條件本文OpenGL環境是在mac系統搭建,並且採用cmake來組織編譯環境,使用的IDE工具是QtCreator 4.9.1, mac作業系統的版本是10.13.6。搭建opengl環境的大致步驟為,構建glfw、構建glad, 連結系統自帶的OpenGL庫。glfw的作用是創建OpenGL上下文、定義窗口參數以及處理用戶輸入。
  • 面試官問Linux下如何編譯C程序,如何回答?為你編譯演示
    文章來源:嵌入式大雜燴 作者:ZhengNLWindows下常用IDE來編譯,Linux下直接使用gcc來編譯,編譯過程是Linux嵌入式編程的基礎,也是嵌入式高頻基礎面試問題。make通過解析Makefile文件來執行一些gcc命令進行編譯。
  • Cmake 3.18.2 發布,開源構建系統
    詳細信息可查看更新說明:https://blog.kitware.com/cmake-3-18-2-available-for-download/下載地址:https://cmake.org/download/
  • 面試官:Linux下如何編譯C程序?
    本文轉載自【微信公眾號:嵌入式大雜燴】,經微信公眾號授權轉載,如需轉載與原文作者聯繫Windows下常用IDE來編譯,Linux下直接使用gcc來編譯,編譯過程是Linux嵌入式編程的基礎,也是嵌入式高頻基礎面試問題。