On Sat, Aug 13, 2011 at 08:48:58AM +0100, Andrew Ross wrote: > On Fri, Aug 12, 2011 at 04:35:00PM -0600, Orion Poplawski wrote: > > On 08/01/2011 12:37 PM, Hazen Babcock wrote: > > > > > > Hello, > > > > > > Version 5.9.8 of PLplot is now available. > > > > I'm getting segfaults on the following tests building for Fedora 15-17: > > > > The following tests FAILED: > > 25 - examples_pdfqt (Failed) > > 24 - examples_epsqt (Failed) > > 23 - examples_svgqt (Failed) > > > > I think it has something to do with library linking: > > > > [mockbuild@mock1 plplot_test]$ xvfb-run > > /builddir/build/BUILD/plplot-5.9.8/fedora/examples/c/x02c -dev pdfqt -o > > ./x02c% > > > > *** PLPLOT WARNING *** > > All pages after the first skipped because family file output not specified. > > > > /usr/bin/xvfb-run: line 166: 11264 Segmentation fault > > DISPLAY=:$SERVERNUM > > XAUTHORITY=$AUTHFILE "$@" 2>&1 > > > > [mockbuild@mock1 plplot_test]$ LD_PRELOAD=/lib64/libpthread.so.0 xvfb-run > > /builddir/build/BUILD/plplot-5.9.8/fedora/examples/c/x02c -dev pdfqt -o > > ./x02c% > > > > *** PLPLOT WARNING *** > > All pages after the first skipped because family file output not specified. > > > > /builddir/build/BUILD/plplot-5.9.8/fedora/examples/c/x02c: symbol lookup > > error: /usr/lib64/libQtGui.so.4: undefined symbol: > > _ZN18QThreadStorageDataD1Ev > > > > [mockbuild@mock1 plplot_test]$ ldd > > /builddir/build/BUILD/plplot-5.9.8/fedora/examples/c/x02c > > linux-vdso.so.1 => (0x00007fff001ff000) > > libplplotd.so.11 => > > /builddir/build/BUILD/plplot-5.9.8/fedora/src/libplplotd.so.11 > > (0x00007f50e2f74000) > > libm.so.6 => /lib64/libm.so.6 (0x00007f50e2ce1000) > > libltdl.so.7 => /usr/lib64/libltdl.so.7 (0x00007f50e2ad8000) > > libdl.so.2 => /lib64/libdl.so.2 (0x00007f50e28d4000) > > libcsirocsa.so.0 => > > /builddir/build/BUILD/plplot-5.9.8/fedora/lib/csa/libcsirocsa.so.0 > > (0x00007f50e26cc000) > > libcsironn.so.0 => > > /builddir/build/BUILD/plplot-5.9.8/fedora/lib/nn/libcsironn.so.0 > > (0x00007f50e24c4000) > > libqhull.so.5 => /usr/lib64/libqhull.so.5 (0x00007f50e2271000) > > libqsastime.so.0 => > > /builddir/build/BUILD/plplot-5.9.8/fedora/lib/qsastime/libqsastime.so.0 > > (0x00007f50e206b000) > > libfreetype.so.6 => /usr/lib64/libfreetype.so.6 > > (0x00007f50e1dcf000) > > libc.so.6 => /lib64/libc.so.6 (0x00007f50e1a35000) > > libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f50e181f000) > > /lib64/ld-linux-x86-64.so.2 (0x00007f50e31dd000) > > > > I'm guessing here that because x02c is not linked with Qt & phtreads > > something > > doesn't get set up correctly when Qt is dlopened. But this is pretty > > beyond > > me. Any thoughts? > > It might also be related to the issues I encountered with debian. As of 5.9.8 > the Qt driver always initialises devices as GUI applications, even for > non-interactive devices. This is because the library can only be initialised > once even if there are multiple streams and subsequent streams might be > qtwidgets. Yesterday I committed a patch so that if DISPLAY is not set (and > so qtwidget would never work anyway) then all devices are initialised as > not GUI (and hence don't open an X connection). For me this meant that > the non-interactive devices worked in a root environment without X doing > something like (unset DISPLAY; make test_noninteractive) to ensure DISPLAY > was not set. Might be worth checking.
Orion, I don't know if you have made any more progress on this, but my fix in SVN only partially works for me. I can now get all the bitmap qt devices to work without X, but the epsqt, pdfqt and svgqt devices all produce a segfault on example 1 when I run make test_noninteractive, either in the build or install tree using my latest Debian 5.9.8 packages. This is in a chroot environment (I'm using pbuilder) to get Debian testing. I get the same result with or without DISPLAY set. The version of Qt is 4.7.3. The somewhat unhelpful output is: Generate C results for epsqt file device Testing front-end c x01c /tmp/buildd/plplot-5.9.8/debian/build_tmp/plplot_test/test_c.sh: line 32: 6126 Segmentation fault $DEBUG_CMD "$cdir"/x${index}${lang} -dev $device -o "${OUTPUT_DIR}"/x${index}${lang}%n.$dsuffix $options 2> test.error >|"${OUTPUT_DIR}"/x${index}${lang}_${dsuffix}.txt make[4]: *** [examples/x01c01.epsqt] Error 1 "make test_interactive" works fine (with X obviously) except for the qtwidget device which fails with the same error. Everything works fine on both my Ubuntu boxes (with 2 different versions of Ubuntu on) whether I have DISPLAY set or not, so I'm suspecting this is a Qt version problem. Can anyone else confirm / deny this? I will try to dig deeper using valgrind. Andrew ------------------------------------------------------------------------------ Special Offer -- Download ArcSight Logger for FREE! Finally, a world-class log management solution at an even better price-free! And you'll get a free "Love Thy Logs" t-shirt when you download Logger. Secure your free ArcSight Logger TODAY! http://p.sf.net/sfu/arcsisghtdev2dev _______________________________________________ Plplot-devel mailing list Plplot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/plplot-devel