我试图用arm-linux-nueabi-g ++ - 4.7编译器使用std :: future编译一个例子;但是,我有以下错误:
user @ user-virtual-machine:〜/ projects / prova $ arm-linux-gnueabi-g ++ - 4.7 -pthread -std = c ++ 11 -c main.cpp
main.cpp:在函数'int main()'中:
main.cpp:8:35:错误:变量'std :: packaged_task task'有初始化程序但是类型不完整
有人可以告诉我我做错了什么吗?我将编译器安装为分发包。
代码:
#include <iostream>
#include <future>
#include <thread>
int main()
{
// future from a packaged_task
std::packaged_task<int()> task([](){ return 7; }); // wrap the function
}
答案 0 :(得分:1)
我可以在ubuntu 16.04上重现相同的错误。使用以下目标体系结构-march=armv7-a
进行编译。这些其他架构armv7-r armv6zk armv6z armv6t2 armv6k
也有效(我没有全部尝试过)。
对于某些体系结构,这段代码似乎无法编译。我希望你的董事会被支持! :)