您的位置:首页 > 运维架构 > Linux

Linuxg++编译C++代码出错 -std=c++11 or -std=gnu++11

2017-06-19 18:25 656 查看
==== Start Building Project =====

---> Compiling src/ltp_helper.cpp ...

src/ltp_helper.cpp: In static member function ‘static void aitech::nlp::ltp::LTPHelper::process(const string&, std::vector<LtpPayload>&)’:

src/ltp_helper.cpp:80:28: warning: range-based ‘for’ loops only available with -std=c++11 or -std=gnu++11

     for (string sentence : sentences)

                            ^

src/ltp_helper.cpp: In static member function ‘static void aitech::nlp::ltp::LTPHelper::convertSrlList(std::vector<std::pair<int, std::vector<std::pair<std::__cxx11::basic_string<char>, std::pair<int, int> > > > >, std::vector<Srl>&)’:

src/ltp_helper.cpp:122:15: error: invalid use of template-name ‘std::pair’ without an argument list

     for (auto pair : array)

               ^

src/ltp_helper.cpp:136:5: error: expected ‘;’ before ‘return’

     return;

     ^

src/ltp_helper.cpp:136:5: error: expected primary-expression before ‘return’

src/ltp_helper.cpp:136:5: error: expected ‘;’ before ‘return’

src/ltp_helper.cpp:136:5: error: expected primary-expression before ‘return’

src/ltp_helper.cpp:136:5: error: expected ‘)’ before ‘return’

Makefile:48: recipe for target 'src/ltp_helper.o' failed
make: *** [src/ltp_helper.o] Error 1

解决方法:CFLAGS添加g++的编译选项-std=c++11
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: