Я использую Qt5 для рендеринга вне экрана и у меня ошибка сегментации при работе внутри Docker.
У меня есть код внутри c++
и вызов функции через python
с использованием pybind11
. Этот код вызывает ошибку segfault
QSurfaceFormat glFormat;
glFormat.setVersion(3, 3);
glFormat.setProfile(QSurfaceFormat::CoreProfile);
glFormat.setRenderableType(QSurfaceFormat::OpenGL);
surface = new QOffscreenSurface();
surface->setFormat(glFormat);
surface->create(); // <-- Here
. точная ошибка:
QObject::connect: Cannot connect (null)::destroyed(QObject*) to QOffscreenSurface::screenDestroyed(QObject*)
Я пытался запустить его через xvfb-run -a python prg.py
и получил ту же ошибку
Есть ли какие-либо указатели для отладки этого?
Немного больше контекста этой проблемы, приведенный выше код работает нормально, если я использую его в основном потоке, заключенном в QApplication
. Эта проблема возникает только тогда, когда я перемещаю ее внутри функции, чтобы я мог вызвать ее внутри python.