美文网首页
jsoncpp使用VS2008编译

jsoncpp使用VS2008编译

作者: 锦囊喵 | 来源:发表于2020-01-08 10:31 被阅读0次

    原文链接
    使用VS2008编译jsoncpp源码为静态库,在自己工程中使用

    1. VS2008

    2. MFC工程下使用

    3. JSON源码,下载地址:

    4. 解压下载的文件:jsoncpp-src-0.5.0.tar.gz jsoncpp
      5.打开源码的工程E:\vs2008_project\json\jsoncpp-src-0.5.0\makefiles\vs71\jsoncpp.sln
      6.生成Debug和Release版本的lib文件,步骤如下:
      1>>打开页面如下图1.
      2>>(Debug和Release模式方式一样)右键lib_json项目->仅用于项目->仅生产lib_json
      3>>再次右键lib_json项目->仅用于项目->仅链接lib_json
      4>>生成lib文件在E:\vs2008_project\json\jsoncpp-src-0.5.0\build\vs71下
      5>>注意:fatal error C1083: 无法打开编译器生成的文件:“../../build/vs71/release/lib_json\json_writer.asm”: No such file or directory ,一般就是release版本的lib需要在属性设置的时候:配置属性->常规->项目默认值最下面两项改成如图所示.


    5. 拷贝 E:\vs2008_project\json\jsoncpp-src-0.5.0\include文件的下的json文件到自己的工程下.

    6. 拷贝刚生成的两个lib(如默认名称Debug版本json_vc71_libmtd.lib Release版本json_vc71_libmt.lib)到工程下.目录任意

    9.lib文件 + 头文件.h 就可以添加到自己的工程下编译了
    1&& 项目->属性->配置属性->C/C++->常规->附加包含目录(jsoncpp源码的头文件.h文件所在位置)
    2&& 项目->属性->配置属性->链接器->常规->附加库目录(jsoncpp源码刚生成json_vc71_libmtd.lib和json_vc71_libmt.lib的目录)
    3&& 项目->属性->配置属性->链接器->输入->附加依赖项(Debug版本json_vc71_libmtd.lib/Release版本json_vc71_libmt.lib)

    10.一般情况下会报错,我的工程师MFC工程,而jsoncpp是win32控制台工程,所以那面容易出错
    1## 错误如出现error LNK2005已定义.可修改 项目->属性->配置属性->常规->MFC的使用->在静态库中使用MFC
    2## StdAfx.h没有引用可以在 项目->属性->配置属性->C/C++->预编译头->不使用预编译(/Yu)
    3## 项目->属性->配置属性->C/C++->代码生成-->运行时库Debug:多线程调试(/MTD) 或者 Release:多线程调试(/MT)
    11 .从文件中解析json.
    CameraConfig是一个结构体,结构体类型和json转换类型一定要一致,否则崩溃.

    #define JN_bAlarm           "bAlarm"  
    #define JN_bAutoStart           "bAutoStart"  
    #define JN_mAlarmCru            "mAlarmCru"  
    #define JN_mDevIndex            "mDevIndex"  
    #define JN_mDevIp           "mDevIp"  
    #define JN_mDevPWD              "mDevPWD"  
    
    struct CameraConfig  
    {  
        bool bAlarm;  
        bool bAutoStart;  
        int mAlarmCru;  
        string mDevIndex;  
        string mDevIp;  
        string mDevPWD;  
    };  
    

    相关文章

      网友评论

          本文标题:jsoncpp使用VS2008编译

          本文链接:https://www.haomeiwen.com/subject/wlijactx.html