关于使用C++ json库一些错误的解决方法
2013-07-25 15:30
781 查看
json官网 http://www.json.org/ json资源下载地址 http://sourceforge.net/projects/jsoncpp/
下载json库后,进入makefiles\vs71 选择工程文件进行编译
编译完成后,可以在build\vs71目录下的debug或release目录下的lib_json文件夹下找到生成的lib文件
如果你的工程需要用到json库,将lib文件和include\json目录拷贝到你的工程目录下,或者将工程的目录引用过来,就可以使用了
但是,有些时候会遇到类似问题
1.第一种情况:
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: __cdecl std::_Lockit::~_Lockit(void)" (??1_Lockit@std@@QEAA@XZ) 已经在 libcpmtd.lib(xlock.obj) 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: __cdecl std::_Lockit::_Lockit(int)" (??0_Lockit@std@@QEAA@H@Z) 已经在 libcpmtd.lib(xlock.obj) 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "void __cdecl std::_Debug_message(wchar_t const *,wchar_t const *,unsigned int)" (?_Debug_message@std@@YAXPEB_W0I@Z) 已经在 libcpmtd.lib(stdthrow.obj) 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: void __cdecl std::_Container_base12::_Orphan_all(void)" (?_Orphan_all@_Container_base12@std@@QEAAXXZ) 已经在 BehaviorTree.obj 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: __cdecl std::_Container_base12::~_Container_base12(void)" (??1_Container_base12@std@@QEAA@XZ) 已经在 BehaviorTree.obj 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: __cdecl std::_Container_base12::_Container_base12(void)" (??0_Container_base12@std@@QEAA@XZ) 已经在 BehaviorTree.obj 中定义
....
发生这种情况,首先,打开json工程,右键-->属性-->C/C++-->代码生成-->运行库 查询此选择的属性 和你的工程属性是否相同,需要保持一致才可以
2.第二种情况:
error LNK2019: 无法解析的外部符号 "public: bool __cdecl Json::Reader::parse(char const *,char const *,class Json::Value &,bool)"
...
发生这种情况,打开json工程,右键-->属性 查看平台选项 是否和你的工程属性相同,需要保持一直才可以
3.第三种情况:
../../build/vs71/release/lib_json\json_writer.asm
发生这种情况,打开json工程,右键-->属性,选择release模式, C/C++-->输出文件-->汇编程序输出 选择无列表
下载json库后,进入makefiles\vs71 选择工程文件进行编译
编译完成后,可以在build\vs71目录下的debug或release目录下的lib_json文件夹下找到生成的lib文件
如果你的工程需要用到json库,将lib文件和include\json目录拷贝到你的工程目录下,或者将工程的目录引用过来,就可以使用了
但是,有些时候会遇到类似问题
1.第一种情况:
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: __cdecl std::_Lockit::~_Lockit(void)" (??1_Lockit@std@@QEAA@XZ) 已经在 libcpmtd.lib(xlock.obj) 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: __cdecl std::_Lockit::_Lockit(int)" (??0_Lockit@std@@QEAA@H@Z) 已经在 libcpmtd.lib(xlock.obj) 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "void __cdecl std::_Debug_message(wchar_t const *,wchar_t const *,unsigned int)" (?_Debug_message@std@@YAXPEB_W0I@Z) 已经在 libcpmtd.lib(stdthrow.obj) 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: void __cdecl std::_Container_base12::_Orphan_all(void)" (?_Orphan_all@_Container_base12@std@@QEAAXXZ) 已经在 BehaviorTree.obj 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: __cdecl std::_Container_base12::~_Container_base12(void)" (??1_Container_base12@std@@QEAA@XZ) 已经在 BehaviorTree.obj 中定义
>msvcprtd.lib(MSVCP100D.dll) : error LNK2005: "public: __cdecl std::_Container_base12::_Container_base12(void)" (??0_Container_base12@std@@QEAA@XZ) 已经在 BehaviorTree.obj 中定义
....
发生这种情况,首先,打开json工程,右键-->属性-->C/C++-->代码生成-->运行库 查询此选择的属性 和你的工程属性是否相同,需要保持一致才可以
2.第二种情况:
error LNK2019: 无法解析的外部符号 "public: bool __cdecl Json::Reader::parse(char const *,char const *,class Json::Value &,bool)"
...
发生这种情况,打开json工程,右键-->属性 查看平台选项 是否和你的工程属性相同,需要保持一直才可以
3.第三种情况:
../../build/vs71/release/lib_json\json_writer.asm
发生这种情况,打开json工程,右键-->属性,选择release模式, C/C++-->输出文件-->汇编程序输出 选择无列表
相关文章推荐
- 关于git的一些错误解决方法。
- 关于使用FusionCharts生成图表时出现invalid xml data错误提示的解决方法
- 关于使用android studio 2.2.3版本编译报错过于简洁无法定位错误解决方法
- 关于使用FusionCharts生成图表时出现invalid xml data错误提示的解决方法
- Android_关于使用android_r21 出现swt.jar的错误解决方法
- PCL库使用中出现的一些错误及解决方法
- 最近在ArcGIS Engine开发中关于调用gp工具过程出现COM 组件的调用返回了错误 HRESULT E_FAIL 错误的解决方法 和 学习oracle中遇到的一些问题总结
- 关于使用ASP.NE 1.1发送电子邮件时出现的 未能访问“CDO.Message”对象 的错误的解决方法
- 教程:关于Google Play无法正常使用解决方法的一些指导建议.
- PHP的Yii框架使用中的一些错误解决方法与建议
- 关于mini2440挂载nfs文件系统一些错误的解决方法
- 【原】关于使用jieba分词+PyInstaller进行打包时出现的一些问题的解决方法
- 关于使用MyEclipse启动web项目时工具报 The specified JRE installation does not exist 错误提示解决方法
- 关于编译ffmpeg的output-example.c和api-example.c 错误的一些解决方法
- cacti使用中的一些错误及解决方法
- 关于使用SuperMap以及开发中一些问题的解决方法。
- 关于在使用rowid和rownum时遇到ORA-01446错误的原因即解决方法。
- 关于Tomcat一些启动错误的解决方法
- 关于vc6.0中常见的因为工程设置project setting设置不对而造成连接错误的一些情况和解决方法(转)
- 关于ubuntu使用中发现的一些问题和部分解决方法