jsoncpp在linux編譯

來源:互聯網
上載者:User

jsoncpp是一個c++封裝的json包,跨平台支援windows、linux、unix等多系統,macOS據說也支援。
在windows下面使用比較簡單,直接往vc裡面添加項目就可以了。linux下面編譯需要使用到scons,
scons又是一個牛叉的工具,功能和GNU make一樣,又比make簡單多了。scons是python工具,
需要先安裝好python。
下載scons

http://www.scons.org/

解壓  tar -zxvf scons-2.0.1.tar.gz
設定環境變數
# export MYSCONS=/home/yuj/work/svn/SkyEye/c++_app/wp_server/scons-2.1.0()
# export SCONS_LIB_DIR=$MYSCONS/engine
開始編譯jsoncpp
# cd jsoncpp-src-0.5.0

# python $MYSCONS/script/scons.py platform=linux-gcc
現報錯 查看路徑下 沒有scons.py檔案
故改為scons,如下. 可能是以前的版本改用命令如下:
# python $MYSCONS/script/scons platform=linux-gcc
通過組建檔案在 
./jsoncpp-src-0.5.0\libs\linux-gcc-4.4.6目錄下面
libjson_linux-gcc-4.4.4_libmt.a
libjson_linux-gcc-4.4.4_libmt.so
寫一個簡單的測試程式
testMainjson.cpp

string test = "{\"id\":1,\"name\":\"kurama\"}";
Json::Reader reader;
Json::Value value;
if(reader.parse(test,value))
{
if(!value["id"].isNull())
{
cout<<value["id"].asInt()<<endl;
cout<<value["name"].asString()<<endl;
}
}
[root@localhost test]# g++ -o testMainjson testMainJson.cpp -I../jsoncpp-src-0.5.0/include  -ljson
/usr/bin/ld: cannot find -ljson
建立符號連結:
ln -s /home/yuj/work/svn/SkyEye/c++_app/wp_server/jsoncpp-src-0.5.0/libs/linux-gcc-4.4.6/libjson_linux-gcc-4.4.6_libmt.so /usr/local/lib/libjson.so
執行
/sbin/ldconfig
編譯:
g++ -o testMainjson testMainJson.cpp -I../jsoncpp-src-0.5.0/include -L../jsoncpp-src-0.5.0/libs/linux-gcc-4.4.6 -ljson
運行:
[root@localhost test]# ./testMainjson 
1
kurama

成功使用jsoncpp庫

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.