无法使用 cmake 交叉编译具有多线程的 c++11 程序

无法使用 cmake 交叉编译具有多线程的 c++11 程序

当我第一次尝试运行该程序时,我得到了以下输出:

此文件需要即将推出的 ISO C++ 标准 C++0x 的编译器和库支持。此支持目前处于试验阶段,必须使用 -std=c++0x 或 -std=gnu++0x 编译器选项启用。

因此,我按照如下所示编辑了 CMakeLists.txt 文件并从终端运行了我的程序:

cmake_minimum_required(VERSION 2.8)

set (CMAKE_CXX_STANDARD 11)

set(CMAKE_CXX_STANDARD_REQUIRED ON)

project(foo)

find_package(qibuild)

SET(CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS} "-std=c++11 -pthread")


qi_create_bin(foo "main.cpp")

qi_create_test(test_foo "test.cpp")

但是,我仍然无法交叉编译该程序,因为我得到以下输出:

Using toolchain: cross-atom
* (1/1) Building foo in Debug
Scanning dependencies of target test_foo
[ 25%] Building CXX object CMakeFiles/test_foo.dir/test.cpp.o
i686-aldebaran-linux-gnu-g++: no input files
/bin/sh: 1: -std=c++11: not found
make[2]: *** [CMakeFiles/test_foo.dir/test.cpp.o] Error 127
make[1]: *** [CMakeFiles/test_foo.dir/all] Error 2
make: *** [all] Error 2
[ERROR]: BuildFailed Error occurred when building project foo

我已经在互联网上搜索了很久,但毫无进展!有人能帮我吗?谢谢!

相关内容