2016-04-26 8 views
0

У меня есть приложение Qt, которое контролирует 2 Kinects через libfreenect. Для доступа к Kinects я использую один Qt-поток. До сих пор все работает отлично. Но мне нужно, чтобы программа продолжала работать, когда один Kinect отключен. Но если это так, программа застревает в вызове waitForNewFrame, даже когда я указываю параметр таймаута. В документации говорится, что 'этот параметр игнорируется, если не построен с поддержкой потоковой передачи C++ 11'.Использовать libfreenects waitForNewFrame с таймаутом на Qt

Что должно быть построено с поддержкой поточной передачи C++ 11? Libfreenect или мое приложение Qt?

И как мне построить с поддержкой потоковой передачи C++ 11?

Приложение Qt построено с помощью qmake. У меня есть Global.pri, где я могу определить компиляторы. Компилятор - это clang, но gcc тоже должен работать.

Libfreenect построен в автоматическом сценарии сборки. Он gilt-клонирует вилку libfreenect и выполняет:

ответ

0

Я нашел причину проблемы.

C++ 11 необходимо включить во время компиляции, добавив аргумент -DENABLE_CXX11=ON к команде cmake.