1.首先是编译libcurl,我下载的是7.52.1,下载地址是点击打开链接http://down.cnzz.cn/201612/63184eca.shtml
我主要参考的是点击打开链接http://www.cnblogs.com/jkcx/p/6406706.html 和
点击打开链接https://my.oschina.net/u/1420791/blog/198247
首先看第一篇,说是要打开开发人员命令提示,我不知道怎么打开,最后查到是在
开始->程序->visual studio 2013-> visual studio tools里面,当然我用的是vs 2013。
然后打开开发人员命令,cd到curl-curl-7_52_1/winbuild/ 目录,
使用命令nmake /f Makefile.vc mode=static VC=12 RTLIBCFG=static编译,
成功之后,生成的库文件在builds/libcurl-vc12-x86-release-static-ipv6-sspi-winssl目录下,我们需要的是该目录下的include和libcurl_a.lib.
然后就要测试啦,新建一个工程,配置工程的时候需要注意一下几点:
①: 如果编译libcurl的时候是静态编译,那么就要设置项目->属性->c/c++->代码生成->运行库->多线程(/MT).
同时
②项目->属性->c/c++->常规->附加包含目录,把builds/libcurl-vc12-x86-release-static-ipv6-sspi-winssl目录下的include包含进来。
③项目->属性->VC++目录->库目录,把builds/libcurl-vc12-x86-release-static-ipv6-sspi-winssl目录下的lib包含进来。
④项目->属性->链接器->输入->附加依赖项,里面添加
libcurl_a.lib
ws2_32.lib
winmm.lib
wldap32.lib
这四项。
⑤项目->属性->c/c++->预处理器->预处理器定义,如果有BUILDING_LIBCURL,就改成CURL_STATICLIB,如果没有就添加CURL_STATICLIB。因为我配置的时候就没有BUILDING_LIBCURL,我参考的资料里面却说有。
然后就可以了,就是这些问题。
2.jsoncpp的编译。jsoncpp最新下载地址点击打开链接https://github.com/open-source-parsers/jsoncpp
然后编译参考的文章主要有:点击打开链接http://blog.sina.com.cn/s/blog_6294abe7010156v5.html 和
点击打开链接http://www.bubuko.com/infodetail-1198176.html
之所以会有第二篇,是因为我编译的是 release版的,debug下就不会有问题。
我把release下生成的lib放到我的工程目录下,然后添加到项目属性的附加依赖项里,测试json,结果出现了这样的问题:
fatal error C1083: 无法打开编译器生成的文件:“../../build/vs71/release/lib_json\json_value.asm”: No such file or directory
然后我就重新打开json的解决方案jsoncpp-master\makefiles\vs71\jsoncpp.sln,项目->属性->c/c++->输出文件->汇编程序输出,改为无列表,重新编译。
成功之后生成的库文件在jsoncpp-master\build\vs71\release\lib_json\json_vc71_libmt.lib.当然这里我是release编译的。
然后新建一个项目测试,配置需要注意的是:
①我是release编译的,那么项目也要按照libcurl的①那样配置。
②项目->属性->VC++目录->库目录,把jsoncpp-master\build\vs71\release\lib_json添加进来,当然我这个路径并不完整,自己得按照自己的目录来添加。
③项目->属性->链接器->输入->附加依赖项,添加json_vc71_libmt.lib。
ok!!!