Здравствуйте.
При попытке использования std::thread не создаются потоки.
Используется:
1) QNX 6.5, Qt 5.7.1 r827, GCC 5.5.0 r343
2) Код:
#include <QDebug>
#include <thread>
void foo(int i) {
while (i < 10)
qDebug() << (i++);
}
int main() {
qDebug() << "before thread";
int qq = 0;
std::thread th1(foo, qq);
qDebug() << "after thread";
th1.join();
return 0;
}
3) Строка запуска сборки:
11:31:28: Запускается: «C:\QNX650\host\win32\x86\usr\bin\make.exe» -j1
C:/QNX650/host/win32/x86/usr/bin/make -f Makefile.Debug
make[1]: Entering directory `C:/Users/Host/Documents/build-thread_test-QNX65_x86-Debug'
ntox86-g++ -c -pipe -isystem C:/QNX650/target/qnx6/usr/include -mstackrealign -g -std=gnu++1y -Wall -W -D_REENTRANT -fPIC -DQT_DEPRECATED_WARNINGS -DQT_QML_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../thread_test -I. -I../../../../QNX650/target/qnx6/opt/qt571/include -I../../../../QNX650/target/qnx6/opt/qt571/include/QtWidgets -I../../../../QNX650/target/qnx6/opt/qt571/include/QtGui -I../../../../QNX650/target/qnx6/opt/qt571/include/QtCore -Idebug -I. -I../../../../QNX650/target/qnx6/opt/qt571/mkspecs/qnx-x86-g++ -o debug/main.obj ../thread_test/main.cpp
ntox86-g++ -Wl,--relax -BC:/QNX650/target/qnx6/x86/lib -Wl,-rpath-link,C:/QNX650/target/qnx6/x86/lib -Wl,-rpath-link,C:/QNX650/target/qnx6/x86/usr/lib -Wl,-rpath-link,C:/QNX650/target/qnx6/opt/qt571/x86/lib -mstackrealign -o thread_test debug/main.obj debug/mainwindow.obj -LC:/QNX650/target/qnx6/x86/lib -LC:/QNX650/target/qnx6/x86/usr/lib -lm -LC:/QNX650/target/qnx6/opt/qt571/x86/lib -lQt5Widgets -lQt5Gui -lQt5Core
make[1]: Leaving directory `C:/Users/Host/Documents/build-thread_test-QNX65_x86-Debug'
11:31:33: Процесс «C:\QNX650\host\win32\x86\usr\bin\make.exe» завершился успешно.
11:31:33: Прошло времени: 00:04.
4) Ожидаемый результат: запуск потока.
5) Что не работает: вместо запуска потока выводится сообщение:
memory fault (core dumped)