我使用paho.mqtt.cpp库构建了一个简单的应用程序。该应用程序根据库要求使用C ++ 11标准。在我的开发机器上以及在Raspberry Pi上编译时,该应用程序会编译并执行。但是,当我使用上面提到的工具链时,我得到一个与库对std :: async的使用有关的错误。
In file included from /home/hicklin/CLionProjects/mqttTest/main.cpp:7:0:
/opt/pi/sysroot/usr/local/include/mqtt/client.h: In member function 'virtual void mqtt::client::connected(const string&)':
/opt/pi/sysroot/usr/local/include/mqtt/client.h:71:76: error: invalid use of incomplete type 'class std::future<void>'
std::async(std::launch::async, &callback::connected, userCallback_, cause);
^
In file included from /opt/pi/sysroot/usr/local/include/mqtt/client.h:28:0,
from /home/hicklin/CLionProjects/mqttTest/main.cpp:7:
/opt/pi/x-tools/arm-unknown-linux-gnueabihf/arm-unknown-linux-gnueabihf/include/c++/6.3.1/future:115:11: note: declaration of 'class std::future<void>'
class future;
^~~~~~
future
文件(只有很小的不同)。错误仍然存在。任何人都可以指出此错误的原因以及可能要研究的内容吗?我应该尝试以不同的方式重建工具链,还是丢失一些标志?