ubuntu下編譯並使用jsoncpp

ubuntu編譯並使用jsoncpp

安裝好gcc和g++

  • 刪除所有舊引用(如果未安裝過gcc,跳過此步驟)
    sudo update-alternatives --remove-all gcc
    sudo update-alternatives --remove-all g++
  • 安裝gcc和g++
   sudo apt-get install gcc-4.8
   sudo apt-get install g++-4.8
  • 添加鏈接
    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20
    sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 20

注意:4.8是安裝的版本,最後的20是指優先級.

  • 檢查是否安裝成功
   gcc --version
   g++ --version

下載jsoncpp及安裝工具

  • jsoncpp下載地址
   https://github.com/open-source-parsers/jsoncpp
  • 安裝scons
sudo apt install scons

編譯

  • 編譯命令

進入到jsoncpp目錄後,輸入如下命令:

scons platform=$PLATFORM [TARGET]
  1. suncc: Sun C++ (Solaris)
  2. vacpp: Visual Age C++ (AIX)
  3. mingw
  4. msvc6: Microsoft Visual Studio 6 service pack 5-6
  5. msvc70: Microsoft Visual Studio 2002
  6. msvc71: Microsoft Visual Studio 2003
  7. msvc80: Microsoft Visual Studio 2005
  8. msvc90: Microsoft Visual Studio 2008
  9. linux-gcc: Gnu C++ (linux, also reported to work for Mac OS X)

在ubuntu下編譯命令爲:scons platform=linux-gcc.

編譯完成之後在目錄下的libs文件夾下能找到編譯後的靜態庫和動態庫文件.

項目中引用jsoncpp.so

  • 項目文件夾
--項目名
   --include
   --lib
   CMakelists.txt
   ...

將so庫文件重命名爲libjsoncpp.so,將本文件移動到lib文件夾下,將下載的jsoncpp的文件夾下的include/json文件夾移動到項目include文件夾下.

  • CMakeLists.txt
set(JSONCPP  ${CMAKE_SOURCE_DIR}/lib/libjsoncpp.so)

# 鏈接
TARGET_LINK_LIBRARIES(項目名稱 ${JSONCPP})
  • 代碼

代碼中需要導入jsoncpp的頭文件,如下:

#include <json/json.h>
...
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章