5

Linux环境下使用jsoncpp - swansfight

 1 year ago
source link: https://www.cnblogs.com/swansfight/p/17259678.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

1. 下载jsoncpp

-->https://github.com/open-source-parsers/jsoncpp/tree/update

两种下载方法:

方法一:git clone ... 到服务器上(或虚拟机上...),有点慢,甚至会失败...!

方法二:下载 zip包,通过第三方软件上传到服务器上(虚拟机直接拖)

2. 生成静态库libjsoncpp.a

GitHub给的步骤命令:

mkdir -p build/debugcd build/debugcmake -DCMAKE_BUILD_TYPE=debug -DBUILD_STATIC_LIBS=ON -DBUILD_SHARED_LIBS=OFF -DARCHIVE_INSTALL_DIR=. -G "Unix Makefiles" ../..make

步骤注意点:
在开始步骤之前先进入之前下载并解压好的jsoncpp文件夹中,然后依次复制粘贴命令去执行即可。

image
image

3. 复制相关文件至/usr/local下(方便编程)

(1)复制头文件:

相对路径:先进入到jsoncpp文件夹下的include文件夹中,再cp -rf json /usr/local/include

绝对路径:cp -rf /home/jsoncpp/include/json /usr/local/include

注:这里不复制的话,就把json文件夹包含在自己项目中即可。

(2)复制静态库:

cp 【libjsoncpp.a所在路径】 /usr/local/lib

查找静态库命令:find -name *.a

image

4. CMakeList.txt编写(需要新增的)

# 由于libjsoncpp.a已被复制到/usr/local/lib下,且系统是会去该路径下搜索相应的库文件,所以以下语句加不加都可以link_directories(/usr/local/lib) # 使用jsoncppset(jsoncpp_lib libjsoncpp.a)target_link_libraries(echatlib ${jsoncpp_lib})



About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK