Segfault with QVTKWidget

The following code works on Windows, but the last line causes a crash on Linux (Ubuntu 16.04):
(page_VTK points to a QMdiArea widget that has been created on a form)

qvtkWidget = new QVTKWidget(page_VTK,QFlag(0));
QVBoxLayout *layout = new QVBoxLayout;
layout->addWidget(qvtkWidget);
// Associate the layout with page_VTK
page_VTK->setLayout(layout);
// Create a renderer, and add it to qvtkWidget’s render window.
// The renderer renders into the render window.
ren = vtkRenderer::New();
printf(“qvtkWidget->GetRenderWindow\n”);
renWin = qvtkWidget->GetRenderWindow();

I’m using the same versions as on Windows:
Qt-4.8.6
VTK-5.10

Does Linux require different code?
Edit: I am building with Qt Creator 3.5.1

Thanks
Gib

A bit more info: I created a very stripped down test program, removing almost everything except for the line
’ vtk = new MyVTK(mdiArea_VTK, widget_key);’
that creates the QVTKWidget. The form has the QMdiArea (mdiArea_VTK) and the QWidget (widget_key) and virtually nothing else. This program executes correctly.
In my original (faulty) program I moved the line above to the top of mainwindow.cpp:

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
setupUi(this);
showMaximized();
vtk = new MyVTK(mdiArea_VTK, widget_key);

where

class MyVTK
{
public:
MyVTK(QWidget *, QWidget *);
~MyVTK();

void key_canvas(QWidget *);


};

and the function MyVTK is:

MyVTK::MyVTK(QWidget *page, QWidget *key_page)
{
page_VTK = page;
qvtkWidget = new QVTKWidget(page_VTK,QFlag(0));
QVBoxLayout *layout = new QVBoxLayout;
layout->addWidget(qvtkWidget);
// Associate the layout with page_VTK
page_VTK->setLayout(layout);
// Create a renderer, and add it to qvtkWidget’s render window.
// The renderer renders into the render window.
ren = vtkRenderer::New();
renWin = qvtkWidget->GetRenderWindow();
renWin->AddRenderer(ren);

This still crashes in the call to GetRenderWindow().
The program is rather complex, and the form has many pages, making it difficult to come up with a test program intermediate between the real program and the extremely simplified test program that works.
Since the code performs correcting on Windows, the problem seems to be related to some difference between the Windows and Linux. I’m stumped.

Gib

Apologies for replying to my own post.
I seem to have discovered an incompatibility between QVTKWidget and OpenCMISS (http://opencmiss.org/) which I am using as a finite element solver of the diffusion equation.
If I remove all the calls to the Iron library (libiron.so) the program does not crash when GetRenderWindow() is called. If I leave the Iron calls in, but don’t try to call GetRenderWindow(), the program does not crash. Both OpenCMISS and VTK are very large and complex software packages, and I am definitely well out of my depth.
In case it conveys some useful info to somebody more qualified than me, here is the output from ldd on the Qt GUI executable.

    linux-vdso.so.1 =>  (0x00007ffd16be4000)
libqwt.so.6 => /home/gib/bin/libqwt.so.6 (0x00007fb7a197a000)
libiron.so => /home/gib/bin/libiron.so (0x00007fb79d356000)
libmpichfort.so.12 => /usr/lib/x86_64-linux-gnu/libmpichfort.so.12 (0x00007fb79d11e000)
liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007fb79cefc000)
libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007fb79cbc2000)
libXt.so.6 => /usr/lib/x86_64-linux-gnu/libXt.so.6 (0x00007fb79c959000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fb79c755000)
libGL.so.1 => /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 (0x00007fb79c4e1000)
libgfortran.so.3 => /usr/lib/x86_64-linux-gnu/libgfortran.so.3 (0x00007fb79c1b6000)
libQtGui.so.4 => /usr/local/Qt-4.8.6/lib/libQtGui.so.4 (0x00007fb79b490000)
libQtNetwork.so.4 => /usr/local/Qt-4.8.6/lib/libQtNetwork.so.4 (0x00007fb79b135000)
libQtCore.so.4 => /usr/local/Qt-4.8.6/lib/libQtCore.so.4 (0x00007fb79ac2d000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fb79aa10000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fb79a68e000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb79a385000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb79a16f000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb799da5000)
libQtSvg.so.4 => /usr/local/Qt-4.8.6/lib/libQtSvg.so.4 (0x00007fb799b4b000)
libQtOpenGL.so.4 => /usr/local/Qt-4.8.6/lib/libQtOpenGL.so.4 (0x00007fb799847000)
liblapack.so.3 => /usr/lib/liblapack.so.3 (0x00007fb79904f000)
libblas.so.3 => /usr/lib/libblas.so.3 (0x00007fb798de0000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fb798bd8000)
libmpich.so.12 => /usr/lib/x86_64-linux-gnu/libmpich.so.12 (0x00007fb79874d000)
libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007fb7984e4000)
libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007fb79809f000)
libxml2.so.2 => /usr/lib/x86_64-linux-gnu/libxml2.so.2 (0x00007fb797ce4000)
/lib64/ld-linux-x86-64.so.2 (0x00007fb7a1cc1000)
libxcb.so.1 => /usr/lib/x86_64-linux-gnu/libxcb.so.1 (0x00007fb797ac2000)
libSM.so.6 => /usr/lib/x86_64-linux-gnu/libSM.so.6 (0x00007fb7978ba000)
libICE.so.6 => /usr/lib/x86_64-linux-gnu/libICE.so.6 (0x00007fb7976a0000)
libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fb797486000)
libexpat.so.1 => /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007fb79725d000)
libxcb-dri3.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0 (0x00007fb79705a000)
libxcb-present.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-present.so.0 (0x00007fb796e57000)
libxcb-sync.so.1 => /usr/lib/x86_64-linux-gnu/libxcb-sync.so.1 (0x00007fb796c50000)
libxshmfence.so.1 => /usr/lib/x86_64-linux-gnu/libxshmfence.so.1 (0x00007fb796a4d000)
libglapi.so.0 => /usr/lib/x86_64-linux-gnu/libglapi.so.0 (0x00007fb79681c000)
libXext.so.6 => /usr/lib/x86_64-linux-gnu/libXext.so.6 (0x00007fb79660a000)
libXdamage.so.1 => /usr/lib/x86_64-linux-gnu/libXdamage.so.1 (0x00007fb796407000)
libXfixes.so.3 => /usr/lib/x86_64-linux-gnu/libXfixes.so.3 (0x00007fb796201000)
libX11-xcb.so.1 => /usr/lib/x86_64-linux-gnu/libX11-xcb.so.1 (0x00007fb795fff000)
libxcb-glx.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-glx.so.0 (0x00007fb795de6000)
libxcb-dri2.so.0 => /usr/lib/x86_64-linux-gnu/libxcb-dri2.so.0 (0x00007fb795be1000)
libXxf86vm.so.1 => /usr/lib/x86_64-linux-gnu/libXxf86vm.so.1 (0x00007fb7959db000)
libdrm.so.2 => /usr/lib/x86_64-linux-gnu/libdrm.so.2 (0x00007fb7957c9000)
libquadmath.so.0 => /usr/lib/x86_64-linux-gnu/libquadmath.so.0 (0x00007fb79558a000)
libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fb795279000)
libpng12.so.0 => /usr/lib/x86_64-linux-gnu/libpng12.so.0 (0x00007fb795054000)
libfreetype.so.6 => /usr/lib/x86_64-linux-gnu/libfreetype.so.6 (0x00007fb794daa000)
libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007fb794b57000)
libXrender.so.1 => /usr/lib/x86_64-linux-gnu/libXrender.so.1 (0x00007fb79494d000)
libfontconfig.so.1 => /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 (0x00007fb79470a000)
libcr.so.0 => /usr/lib/libcr.so.0 (0x00007fb794500000)
libicuuc.so.55 => /usr/lib/x86_64-linux-gnu/libicuuc.so.55 (0x00007fb79416c000)
libXau.so.6 => /usr/lib/x86_64-linux-gnu/libXau.so.6 (0x00007fb793f68000)
libXdmcp.so.6 => /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 (0x00007fb793d62000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007fb793b5d000)
libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fb7938ed000)
libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007fb7936e5000)
libicudata.so.55 => /usr/lib/x86_64-linux-gnu/libicudata.so.55 (0x00007fb791c2e000)