下載地址:https://sourceforge.net/projects/jsoncpp/
- 解壓下載好的文件:jsoncpp-src-0.5.0.tar.gz
- 利用VS2013(也可以用其他版本VS編輯器打開)打開jsoncpp-src-0.5.0\makefiles\vs71目錄下的jsoncpp.sln,會出現三個Project:jsontest, lib_json, test_lib_json
- 檢查設置:在lib_json上右擊-->Properties-->Configuration Properties-->C/C++-->Code Generation,檢查設置是否為RunTime Library 為MTD
- 切換配置中需要生成的平台,win32還是x64,debug版本還是release版本
在用vs2013打開下載的JSonCpp工程文件會出現工程升級提示,直接點擊確定。可以看到:
按照需要修改生成的版本,Debug版本還是Release版本。Win32還是x64:
下圖是安裝需要配置,這里是64位平台,如果需要的是32位的lib,則無需配置。
檢查一遍這里:
直接點擊重新生成,在
例如:上述生成的是64位debug版本的lib: json_vc71_libmtd.lib
新建一個測試工程,控制台程序JSonDemo
將jsoncpp-src-0.5.0中的頭文件夾include拷貝到該工程目錄下,然后建立一個lib文件夾,將上一步生成的 json_vc71_libmtd.lib放在其中。
右鍵修改JSonDemo的配置,注意要和上一步生成的lib對應平台。
以下需要設置:
記得將這里改成MTd:
到此為止,則配置完成。
開始添加main函數,進行簡單測試:
#include "json/json.h" #include <string> int main() { std::string strValue = "{\"key1\":\"value1\"}"; Json::Reader reader; Json::Value value; if (reader.parse(strValue, value)) { std::string out = value["key1"].asString(); std::cout << out << std::endl; } return 0; }
中間可能會遇到的問題:
1.請問debug編譯時警告提示缺少引用模塊的調試信息;正在鏈接對象,如同沒有調試信息一樣。解決方法:將生成lib的工程清理一遍,重新生成lib。
參考:http://bbs.csdn.net/topics/260012340
2.在下載的工程中直接用測試例子,出現lib打不開的鏈接錯誤,這個可以不用擔心,直接新建工程,按照設置,可以正確運行。
3.若出現error LINK2038錯誤:檢測到"RuntimeLibrary"的不匹配項:值。。。
解決方法在生成lib的工程中,設置同樣的運行庫,這里是是運行庫不匹配造成的。
這里按目標工程的需要設置。
使用參考:https://www.cnblogs.com/kex1n/archive/2011/12/02/2272328.html
編譯參考:http://blog.csdn.net/u010442009/article/details/38401351
其他: http://www.cppblog.com/wanghaiguang/archive/2013/12/26/205020.htmlug