折腾了快一个星期了,终于把环境安装好(发个牢骚)。
1.编译boost1.5.5
1.1打开vs2010命令行
在vs2010中打开命令行,出师不利,报错Setting environment for using MicrosoftVisual Studio. 此时不应有\xxxx
解决方法,在path中找到相就的路径,打其中的双引号删除,就是因为之前安装过masm64,include中还有影响的,so卸载。。。
1.2生成bjam.exe
到boost目录,运行booststrap.bat,也有可能是bootstrap.bat(少个s,也不知道是什么心态)
1.3利用生成的bjam.exe编译
各个参数可以在网上找到,就不介绍,其中关键的是link和runtime-link
开始用
bjamstage --toolset=msvc-10.0 --build-type=complete--stagedir="D:\boost_1_55_0\bin\vc10" link=static runtime-link=shared threading=multi debug release
编译后,用cmake生成工程文件报错
最后动态链接库生成不同的四种
bjamstage --toolset=msvc-10.0 --build-type=complete--stagedir="D:\boost_1_55_0\bin\vc10" link=static runtime-link=shared threading=multi debug release
bjamstage --toolset=msvc-10.0 --build-type=complete --stagedir="D:\boost_1_55_0\bin\vc10" link=static runtime-link=staticthreading=multi debug release
bjamstage --toolset=msvc-10.0 --build-type=complete--stagedir="D:\boost_1_55_0\bin\vc10" link=shared runtime-link=shared threading=multi debug release
bjamstage --toolset=msvc-10.0 --build-type=complete--stagedir="D:\boost_1_55_0\bin\vc10" link=shared runtime-link=static threading=multi debug release
最后一个没有生成,也没有多大问题
2.利用cmake生成shark工程文件
这个在过程中没有多大问题
3.shark工程的编译以及使用
编译过程还是挺顺利,在使用时遇到的问题太多,之前就是一次编译过,测试总是出错,就算是用源代码中的测试文件也没有用处。
3.1报error C2589: “(”: “::”右边的非法标记 的错误
主要原因是: 函数模板max与Visual C++中的全局的宏max冲突
解决方法:项目属性 ——> C/C++ ——> 预处理器 ——> 预处理器定义 (此处添加预定义编译开关 NOMINMAX)
3.2vs2013与vs2010的选择
同一个代码用vs2013编译的报错,用vs2010完全没问题,建议用vs2010