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 
...

你可能感兴趣的:(c++)