今天踩到一个坑了了。要用这个json库,在网上直接下载了一个。俺以下步骤操作结果发现 出现link错误
error LNK2019: 无法解析的外部符号 "public: __thiscall Json::Reader
后来发现问题如下:
我的主工程的编译条件是MDD, 一般网上下载的是mtd的。没发用,只能自己下载源码编译
我把源码工程设置为mdd,编译好debug和release的版本,然后新建了一个mfc的对话框工程来测试。这个mfc的新工程编译参数设置为mdd保持一致。
安装以下步骤配置
1. 自己的主工程目录下,新建一个jsoncpp的目录,然后 将源码工程下的include\json这个文件夹拷贝过来
目录是:jsoncpp\include\json
2、 将自己刚刚生产的debug和release的lib库也放到json目录下,
比如 json\lib\json_vc71_libmdd.lib
jsoncpp\lib\release\json_vc71_libmt.lib
3 . 在项目属性里,增加下面2个路径
项目---属性---c/c++/常规------附加包含目录:jsoncpp\include\json
链接器-----常规------附加库目录----my_jsoncpp\lib\debug
debug下和release下,要分别包含哦,注意版本
4. 在自己的工程cpp文件的 上面 加上:
/#include "jsoncpp/include/json/json.h" (特别注明: 这个路径是我自己的,每个人根据自己的路径来设置)
#pragma comment(lib,"json_vc71_libmdd.lib")
到此,第三方jsoncpp库的使用整个流程就结束了。 随便写个测试代码,测试结果很正常。一切ok
另外转一个类似的:
http://www.cnblogs.com/SZxiaochun/p/5866401.html