引用JsonCPP库发生的问题和解决过程
来源:互联网 发布:node interpreter 编辑:程序博客网 时间:2024/05/21 09:06
C++要使用JSON来解析数据,一般采用jsoncpp.
网站:http://sourceforge.net/projects/jsoncpp/
我们如果要引用JSON的API有两种方法:
其一:引用lib文件;其二:引用源文件
在这里我只试验了方法一:
方法一:
1.从git上下载jsoncpp:https://github.com/open-source-parsers/jsoncpp
2.解压下载好的文件:jsoncpp-src-0.5.0.tar.gz
3.使用vs打开jsoncpp-src-0.5.0.tar.gz\makefile\vs71目录下中的jsoncpp.sln,打开后会出现三个项目工程jsontest, lib_json, test_lib_json
4.在lib_json上右击->Properties-->Configuration Properties-->C/C++-->Code Generation,记录下右边的Runtime Library的属性内容(因为两个工程的属性要保持相同,否则会编译出错)
5.编译lib_json,显示编译成功以后,在jsoncpp_src-0.5.0\build\vs71\debug\lib_json目录下会生成一个json_vc71_libmtd.lib,将这个lib拷贝到需要使用jsoncpp的工程目录JsonTestApp下。
意外:
当我把头文件和lib_json.lib都正常引入了JsonTestApp工程下,并设置了相应的路径。但是debug运行失败:
json静态链接错误:msvcprtd.lib(MSVCP100D.dll)
原因:
因为之前在编译生成lib_json.lib时我们选择了Multi-threaded Debug (/MTd)的运行时库。所以我应该在JsonTestApp下配置如下:
工程(Project)->属性(Properties)->配置属性(Configuration Properties)->c/c++->代码生成(Code Generation)->运行时库(Use run-time library)->Multi-threaded Debug (/MTd)。
当然我们可以在生成lib时配置Multi-threaded Debug DLL (/MDd),然后再JsonTestApp中也同样配置如此。
- 引用JsonCPP库发生的问题和解决过程
- vs2012 编译jsoncpp和使用jsoncpp lib出现的问题
- vs2012 编译jsoncpp和使用jsoncpp lib出现的问题
- Visual Studio 中 VC++/MFC 下 jsoncpp 静态库的编译和引用
- JSONCPP库引用(转)
- 使用jsoncpp的问题
- VS2010配置jsoncpp解决编译出错问题
- nginx和Tomcat集成后发生的重定向问题分析和解决
- nginx和Tomcat集成后发生的重定向问题分析和解决
- nginx和Tomcat集成后发生的重定向问题分析和解决
- LaTex解决目录红框和参考文献引用的问题
- jsoncpp 库的使用方法
- jsoncpp库的使用方法
- 东软实训推荐面试问题4:你和别人发生争执你是怎样解决的?
- C++使用jsoncpp库问题
- jsoncpp的生成和使用
- jsoncpp和curl的使用
- Jsoncpp的编译和使用
- php文件读写
- 搜狐2018校园招聘9月17号编程题
- ubuntu google-chrome-stable crash: libnss版本
- php把字符串指定字符分割成数组
- 正则表达式的元字符
- 引用JsonCPP库发生的问题和解决过程
- flex定时触发按钮的点击事件
- js改变标签得属性
- PLS-00201: 必须声明标识符 'PKG_CONST.R_CURSOR'
- Numpy库学习(一)
- JS创建页面组件
- 关闭页面弹出弹窗js代码
- 关闭浏览器时触发
- 算法分析与设计丨第六周丨LeetCode(9)——Course Schedule(Medium)