在VS Code上使用Boost

图托马克斯

g ++使用以下任务找不到boost / regex.hpp:

{
            "taskName": "C4B", // Compile for debug with boost
            "command": "g++",
            "args": [
                "-g","${fileBasename}""-o","${fileBasenameNoExtension}"
            ],
            "type": "shell"
        },

我也尝试使用此arg: "-IC:\\boost\\include\\boost-1_64\\boost"

通过MinGW安装了g ++,我将bin添加到PATH环境变量中

我一直使用Visual Studio IDE ...我是命令行知识的新手

这就是我在VS Code上包含路径的方式:

    "includePath": [
                    "C:\\MinGW\\lib\\gcc\\mingw32\\5.3.0\\include\\c++",
                    "C:\\boost\\include\\boost-1_64\\boost"

                ],
    "browse": {
                "path": [
                    "C:\\MinGW\\lib\\gcc\\mingw32\\5.3.0\\include\\c++",
                    "C:\\boost\\include\\boost-1_64\\boost"

                ],

在此之前,我只包括 C:\\boost\\include

这是错误:

test1.cpp:1:27: fatal error: boost/regex.hpp: No such file or directory

编译终止。我该如何解决?


更新1:

所以我同时包括了include和lib文件夹:

"includePath": [
                "C:\\MinGW\\lib\\gcc\\mingw32\\5.3.0\\include\\c++",
                "C:\\boost\\include",
                "C:\\boost\\lib"

            ],

我的编译任务是:

{
            "taskName": "C4B", // Compile for debug with boost
            "command": "g++",
            "args": [
                "-g","${fileBasename}","-IC:\\boost\\include\\boost-1_64","-o","${fileBasenameNoExtension}"
            ],
            "type": "shell"
        }

现在我有这个输出:

C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640027cpp_regex_traits_char_layerIcEC2
ERKNS0_21cpp_regex_traits_baseIcEE':
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:370: undefined reference to `boost::re_detail_106400::c
pp_regex_traits_char_layer<char>::init()'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640011raw_storage6extendEj':
C:/boost/include/boost-1_64/boost/regex/v4/regex_raw_buffer.hpp:131: undefined reference to `boost::re_detail_106400::r
aw_storage::resize(unsigned int)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640015save_state_initC1EPPNS0_11saved_
stateES4_':
C:/boost/include/boost-1_64/boost/regex/v4/perl_matcher_non_recursive.hpp:107: undefined reference to `boost::re_detail
_106400::get_mem_block()'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640015save_state_initD1Ev':
C:/boost/include/boost-1_64/boost/regex/v4/perl_matcher_non_recursive.hpp:115: undefined reference to `boost::re_detail
_106400::put_mem_block(void*)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640012perl_matcherIN9__gnu_cxx17__norm
al_iteratorIPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESaINS_9sub_matchISC_EEENS_12regex_traitsIcNS_16cpp
_regex_traitsIcEEEEE9match_impEv':
C:/boost/include/boost-1_64/boost/regex/v4/perl_matcher_common.hpp:214: undefined reference to `boost::re_detail_106400
::verify_options(unsigned int, boost::regex_constants::_match_flags)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640012perl_matcherIN9__gnu_cxx17__norm
al_iteratorIPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESaINS_9sub_matchISC_EEENS_12regex_traitsIcNS_16cpp
_regex_traitsIcEEEEE18unwind_extra_blockEb':
C:/boost/include/boost-1_64/boost/regex/v4/perl_matcher_non_recursive.hpp:1352: undefined reference to `boost::re_detai
l_106400::put_mem_block(void*)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640011raise_errorINS_20regex_traits_wr
apperINS_12regex_traitsIcNS_16cpp_regex_traitsIcEEEEEEEEvRKT_NS_15regex_constants10error_typeE':
C:/boost/include/boost-1_64/boost/regex/pattern_except.hpp:75: undefined reference to `boost::re_detail_106400::raise_r
untime_error(std::runtime_error const&)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640012perl_matcherIN9__gnu_cxx17__norm
al_iteratorIPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEESaINS_9sub_matchISC_EEENS_12regex_traitsIcNS_16cpp
_regex_traitsIcEEEEE12extend_stackEv':
C:/boost/include/boost-1_64/boost/regex/v4/perl_matcher_non_recursive.hpp:222: undefined reference to `boost::re_detail
_106400::get_mem_block()'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640018basic_regex_parserIcNS_12regex_t
raitsIcNS_16cpp_regex_traitsIcEEEEE4failENS_15regex_constants10error_typeEiNSt7__cxx1112basic_stringIcSt11char_traitsIc
ESaIcEEEi':
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_parser.hpp:237: undefined reference to `boost::regex_error::rege
x_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::regex_constants:
:error_type, int)'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_parser.hpp:238: undefined reference to `boost::regex_error::rais
e() const'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_parser.hpp:237: undefined reference to `boost::regex_error::~reg
ex_error()'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_parser.hpp:237: undefined reference to `boost::regex_error::~reg
ex_error()'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640019basic_regex_creatorIcNS_12regex_
traitsIcNS_16cpp_regex_traitsIcEEEEE16fixup_recursionsEPNS0_14re_syntax_baseE':
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:783: undefined reference to `boost::regex_error::reg
ex_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::regex_constants
::error_type, int)'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:784: undefined reference to `boost::regex_error::rai
se() const'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:783: undefined reference to `boost::regex_error::~re
gex_error()'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:872: undefined reference to `boost::regex_error::reg
ex_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::regex_constants
::error_type, int)'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:873: undefined reference to `boost::regex_error::rai
se() const'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:872: undefined reference to `boost::regex_error::~re
gex_error()'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:783: undefined reference to `boost::regex_error::~re
gex_error()'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:872: undefined reference to `boost::regex_error::~re
gex_error()'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640019basic_regex_creatorIcNS_12regex_
traitsIcNS_16cpp_regex_traitsIcEEEEE16create_startmapsEPNS0_14re_syntax_baseE':
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:938: undefined reference to `boost::regex_error::reg
ex_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::regex_constants
::error_type, int)'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:939: undefined reference to `boost::regex_error::rai
se() const'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:938: undefined reference to `boost::regex_error::~re
gex_error()'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:938: undefined reference to `boost::regex_error::~re
gex_error()'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640019basic_regex_creatorIcNS_12regex_
traitsIcNS_16cpp_regex_traitsIcEEEEE15create_startmapEPNS0_14re_syntax_baseEPhPjh':
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:1139: undefined reference to `boost::regex_error::re
gex_error(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::regex_constant
s::error_type, int)'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:1140: undefined reference to `boost::regex_error::ra
ise() const'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:1139: undefined reference to `boost::regex_error::~r
egex_error()'
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:1139: undefined reference to `boost::regex_error::~r
egex_error()'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZNK5boost16re_detail_10640031cpp_regex_traits_implementation
IcE12error_stringENS_15regex_constants10error_typeE':
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:447: undefined reference to `boost::re_detail_106400::g
et_default_error_string(boost::regex_constants::error_type)'
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:449: undefined reference to `boost::re_detail_106400::g
et_default_error_string(boost::regex_constants::error_type)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640019basic_regex_creatorIcNS_12regex_
traitsIcNS_16cpp_regex_traitsIcEEEEE12insert_stateEiNS0_19syntax_element_typeEj':
C:/boost/include/boost-1_64/boost/regex/v4/basic_regex_creator.hpp:320: undefined reference to `boost::re_detail_106400
::raw_storage::insert(unsigned int, unsigned int)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost12object_cacheINS_16re_detail_10640021cpp_regex_trai
ts_baseIcEENS1_31cpp_regex_traits_implementationIcEEE3getERKS3_j':
C:/boost/include/boost-1_64/boost/regex/pending/object_cache.hpp:66: undefined reference to `boost::scoped_static_mutex
_lock::scoped_static_mutex_lock(boost::static_mutex&, bool)'
C:/boost/include/boost-1_64/boost/regex/pending/object_cache.hpp:66: undefined reference to `boost::scoped_static_mutex
_lock::~scoped_static_mutex_lock()'
C:/boost/include/boost-1_64/boost/regex/pending/object_cache.hpp:66: undefined reference to `boost::scoped_static_mutex
_lock::~scoped_static_mutex_lock()'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZNK5boost16re_detail_10640031cpp_regex_traits_implementation
IcE18lookup_collatenameEPKcS4_':
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:680: undefined reference to `boost::re_detail_106400::l
ookup_default_collate_name(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16re_detail_10640031cpp_regex_traits_implementationI
cE4initEv':
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:721: undefined reference to `boost::re_detail_106400::r
aise_runtime_error(std::runtime_error const&)'
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:736: undefined reference to `boost::re_detail_106400::g
et_default_error_string(boost::regex_constants::error_type)'
C:\Users\dj_al\AppData\Local\Temp\cctBnhDJ.o: In function `ZN5boost16cpp_regex_traitsIcE16get_catalog_nameEv':
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:1117: undefined reference to `boost::scoped_static_mute
x_lock::scoped_static_mutex_lock(boost::static_mutex&, bool)'
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:1117: undefined reference to `boost::scoped_static_mute
x_lock::~scoped_static_mutex_lock()'
C:/boost/include/boost-1_64/boost/regex/v4/cpp_regex_traits.hpp:1117: undefined reference to `boost::scoped_static_mute
x_lock::~scoped_static_mutex_lock()'
collect2.exe: error: ld returned 1 exit status
安德烈·谢马舍夫(Andrey Semashev)

如果C:\boost\include\boost-1_64是在其中安装Boost(即解压缩源软件包)的位置,则应将其添加到include目录中,而不是C:\boost\include\boost-1_64\boost尾随boost目录#include位于代码中的伪指令中。

如果您使用的是图形IDE,我希望它在保存项目时根据需要自动执行转义反斜杠('\')字符。否则,您可能必须手动转义它们。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章