当前位置: 首页 > 工具软件 > NumCpp > 使用案例 >

NumCpp的安装

卫招
2023-12-01

最近想用一下Numpy库的c++版,但是安装比较复杂,不过还好最终安装完成了

我使用的IDE是VSC++2017;

下面是步骤
第一步,阅读官方文档,我下载的版本需要下载Boost1.7或Boost1.68,所以我就去官网下载了Boost;
第二步,下载Boost;
第三步,运行新出现的b2.exe和bjam.exe;
第四步,安装Boost:在解压完的文件夹里找到bootstrap.bat并运行,然后打开vsc++的开发人员命令提示符,输入如下代码:

bjam stage --toolset=msvc-14.1 --without-python --stagedir="c:\Boost" link=static runtime-link=shared runtime-link=static threading=multi debug release 

下面是这条语句的详细说明(转自https://blog.csdn.net/qq_39187538/article/details/92767707)

1)stage/install:

stage表示只生成库(dll和lib),install还会生成包含头文件的include目录。本人推荐使用stage,因为install生成的这个include目录实际就是boost安装包解压缩后的boost目录(D:\boost\boost_1_70_0,只比include目录多几个非hpp文件,都很小),所以可以直接使用,而且不同的IDE都可以使用同一套头文件,这样既节省编译时间,也节省硬盘空间。

(2)toolset:

指定编译器,可选的如borland、gcc、msvc(VC6)、msvc-9.0(VS2008)等,VS2019对应msvc-版本我查不到,就是用了14。

下面是vs对应的msvc的版本

MSVC++ 14.0 _MSC_VER == 1900 (Visual Studio 2015)

MSVC++ 12.0 _MSC_VER == 1800 (Visual Studio 2013)

MSVC++ 11.0 _MSC_VER == 1700 (Visual Studio 2012)

MSVC++ 10.0 _MSC_VER == 1600 (Visual Studio 2010)

MSVC++ 9.0 _MSC_VER == 1500 (Visual Studio 2008)

MSVC++ 8.0 _MSC_VER == 1400 (Visual Studio 2005)

MSVC++ 7.1 _MSC_VER == 1310 (Visual Studio 2003)

MSVC++ 7.0 _MSC_VER == 1300

MSVC++ 6.0 _MSC_VER == 1200

MSVC++ 5.0 _MSC_VER == 1100

(3)without/with:

选择不编译/编译哪些库。因为python、mpi等库我都用不着,所以排除之。还有wave、graph、math、regex、test、program_options、serialization、signals这几个库编出的静态lib都非常大,所以不需要的也可以without掉。这可以根据各人需要进行选择,默认是全部编译。但是需要注意,如果选择编译python的话,是需要python语言支持的,应该到python官方主页http://www.python.org/下载安装。

查看boost包含库的命令是bjam --show-libraries。

(4)stagedir/prefix:

stage时使用stagedir,install时使用prefix,表示编译生成文件的路径。我这里直接保存到了“D\boost“目录下了。

(5)build-dir:

编译生成的中间文件的路径。这个本人这里没用到,默认就在根目录(E:\SDK\boost)下,目录名为bin.v2,等编译完成后可将这个目录全部删除(没用了),所以不需要去设置。

(6)link:

生成动态链接库/静态链接库。生成动态链接库需使用shared方式,生成静态链接库需使用static方式。一般boost库可能都是以static方式编译,因为最终发布程序带着boost的dll感觉会比较累赘。

(7)runtime-link:

动态/静态链接C/C++运行时库。同样有shared和static两种方式,这样runtime-link和link一共可以产生4种组合方式,各人可以根据自己的需要选择编译。

(8)threading:

单/多线程编译。一般都写多线程程序,当然要指定multi方式了;如果需要编写单线程程序,那么还需要编译单线程库,可以使用single方式。

(9)debug/release:

编译debug/release版本。一般都是程序的debug版本对应库的debug版本,所以两个都编译。

第五步,建立vsc++ 项目,使用windows控制台应用程序;
第六步,修改项目属性:一,添加包含目录:c/c+±>常规->添加包含目录->path(boost根目录,boost_1_70_0和NumCpp的include文件夹);二,链接器->常规->添加库目录->path(第四步新生成的lib文件夹和第三步新生成的stage文件夹)

然后就可以愉快的使用了,不过注意可能会修改平台工具集,在配置属性->常规里边。然后就应该可以开始搞了。

 类似资料: