0

我有一个 Qt 应用程序,它通过 libfreenect 控制 2 个 Kinect。为了访问 Kinect,我使用了一个 Qt 线程。到目前为止,一切都完美无缺。但是当一个 Kinect 断开连接时,我需要程序继续工作。waitForNewFrame但如果是这样,即使我指定了超时参数,程序也会卡在调用中。文档说,“如果不使用 C++11 线程支持构建,则忽略此参数”。

必须使用 C++11 线程支持构建什么?Libfreenect 还是我的 Qt 应用程序?

以及如何使用 C++11 线程支持进行构建?

Qt 应用程序是用 qmake 构建的。我有一个 Global.pri,我可以在其中定义编译器开关。编译器很响,但 gcc 也应该可以工作。

Libfreenect 是在自动构建脚本中构建的。它 git 克隆 libfreenect 的一个分支并执行:

cmake .
make
sudo make install
4

1 回答 1

0

我找到了问题的原因。

需要在编译期间通过将-DENABLE_CXX11=ON参数添加到cmake命令来启用 C++11。

于 2016-05-23T06:44:27.157 回答