在控制台编程环境中使用boost与mingw g++;编译程序

在控制台编程环境中使用boost与mingw g++;编译程序,boost,cmd,g++,Boost,Cmd,G++,我在此处安装了boost,说明如下: 在Visual Studio中工作,但在windows cmd中使用mingw g++编译时不工作 编辑是维姆 源代码如下: #include <boost/algorithm/string.hpp> ... #包括 ... 这样编译: > g++ -o test test.cpp test.cpp:7:10: fatal error: boost/algorithm/string.hpp: No such file or direct

我在此处安装了boost,说明如下:

在Visual Studio中工作,但在windows cmd中使用mingw g++编译时不工作

编辑是维姆

源代码如下:

#include <boost/algorithm/string.hpp>
...
#包括
...
这样编译:

> g++ -o test test.cpp
test.cpp:7:10: fatal error: boost/algorithm/string.hpp: No such file or directory
 #include <boost/algorithm/string.hpp>
>g++-o test.cpp
test.cpp:7:10:致命错误:boost/algorithm/string.hpp:没有这样的文件或目录
#包括

如何使我的mingw g++可用于boost?

您使用了页面中的配置:

import option ; 
using msvc ; 
option.set keep-going : false ; 
libraries = --with-program_options --with-regex --with-filesystem --with-system ;
使用msvc
可能会告诉你一些事情。它使用MSVC工具链。因为这些不是互操作的(不同的C++运行时库,对于初学者来说,可能是不同的ABI),所以不能链接到那些库。 某个标题后面接了个 如果像您展示的代码一样,您只需要标题,那么这没有问题,只需将include路径添加到编译器标志中,就像教程还告诉您的那样:

因此,要么直接键入命令行选项:

g++ -I C:\boost_1_65_0
或添加到构建脚本中的变量,如Makefile:

CPPFLAGS+=-I C:\boost_1_65_0
或制作:

INCLUDE_DIRECTORIES(C:\boost_1_65_0)
有联系 要使用预构建的共享库,您需要为mingw构建不同的版本。例如,参见以下步骤:

我上周安装了它(),效果很好。(我也没有使用Vim的IDE,尽管VsCode也不错)

检查是否正在使用mingw工具链(例如mgw81),这也意味着
mgw81
应该是库文件名的一部分。遵循该教程已经给出了这一点,但是如果您不小心的话,您以前存在的配置可能会产生干扰


您使用了页面中的配置:

import option ; 
using msvc ; 
option.set keep-going : false ; 
libraries = --with-program_options --with-regex --with-filesystem --with-system ;
使用msvc
可能会告诉你一些事情。它使用MSVC工具链。因为这些不是互操作的(不同的C++运行时库,对于初学者来说,可能是不同的ABI),所以不能链接到那些库。 某个标题后面接了个 如果像您展示的代码一样,您只需要标题,那么这没有问题,只需将include路径添加到编译器标志中,就像教程还告诉您的那样:

因此,要么直接键入命令行选项:

g++ -I C:\boost_1_65_0
或添加到构建脚本中的变量,如Makefile:

CPPFLAGS+=-I C:\boost_1_65_0
或制作:

INCLUDE_DIRECTORIES(C:\boost_1_65_0)
有联系 要使用预构建的共享库,您需要为mingw构建不同的版本。例如,参见以下步骤:

我上周安装了它(),效果很好。(我也没有使用Vim的IDE,尽管VsCode也不错)

检查是否正在使用mingw工具链(例如mgw81),这也意味着
mgw81
应该是库文件名的一部分。遵循该教程已经给出了这一点,但是如果您不小心的话,您以前存在的配置可能会产生干扰