QtCreator动态编译jsoncpp完美支持x86和arm平台.docx
《QtCreator动态编译jsoncpp完美支持x86和arm平台.docx》由会员分享,可在线阅读,更多相关《QtCreator动态编译jsoncpp完美支持x86和arm平台.docx(10页珍藏版)》请在冰豆网上搜索。
QtCreator动态编译jsoncpp完美支持x86和arm平台
如果是做嵌入式开发。
在Qt下支持JSon最好的办法,可能不是采用qjson这个库。
QJson这个库的实例只提供了x86环境下的编译方法。
InstallingQJson
--------------
QJsonrequires:
-Qt4.0orgreater
-cmake2.6orgreater
ForUnix/Linux/Mac:
mkdirbuild
cdbuild
cmake-DCMAKE_INSTALL_PREFIX=_preferred_path_..
make
makeinstall
/sbin/ldconfig,ifnecessary
Pleasereportproblemsto:
按照上面的办法,的确10分钟就可以搞定x86环境的Linux程序了。
但是,如果要把这个库移植到arm环境下,花了好几个小时都没有任何进展。
相信很多朋友也有类似的感觉。
经过实验,终于找到一个非常简单的办法了。
可以很好的把JSon和QtCreator集成在一起了。
第1步:
下载jsoncpp-src-0.5.0.tar.gz这个库文件。
下载地址:
解压后如图:
不要被这一堆文件吓到哦。
第2步:
把我们要的东西从代码堆里整理出来。
(1)随便找个地方建一个空文件夹叫json
(2)将include\json里面所有文件复制到刚刚新建的json文件夹里(共8个文件,全部是.h的头文件)
(3)将src/lib_json里面的所有文件全部复制到json文件里,共8个文件
通过复制这些文件,就组成了我们所要的JSON库的全部源代码了。
完整的文件清单见下面:
第3步:
打开QtCreator集成开发环境,新建一个新项目。
然后把我们刚刚准备好的JSON库,复制到你新建项目的同一目录下。
最后回到QtCreator开发环境,鼠标右键点击“添加现有文件”
打开JSON目录,选中全部文件。
点击“打开”。
至此JSON库的所有代码添加完毕。
对比哈,你的代码结构,和我一致吗?
如果一致,恭喜你!
第4步:
编辑测试代码
在可视化界面上,添加一个“按钮”建立好信号槽。
按钮代码如下:
voidWidget:
:
on_btnTestJson_clicked()
{
usingnamespacestd;
std:
:
stringstrValue="{\"学号\":
\"20120207001\",\"姓名\":
\"张无忌\",\"性别\":
\"男\"}";
Json:
:
Readerreader;
Json:
:
Valuevalue;
if(reader.parse(strValue,value))
{
std:
:
stringout=value["学号"].asString();
std:
:
cout<:
endl;
out=value["姓名"].asString();
std:
:
cout<:
endl;
out=value["性别"].asString();
std:
:
cout<:
endl;
}
}
运行效果如下:
更多JSON-CPP库的用法,请参考json-cpp的使用手册。
arm开发环境编译测试:
(1)首先检查你的arm环境和我的是否一致。
(2)切换工程编译模式
选择Embed4.5Release嵌入式开发环境编译器
(3)重新构建工程文件
重新构建完成。
点击编译即可。
将编译好的程序文件copy到arm开发板上就可以运行了。