From: Orion P. <or...@co...> - 2015-04-24 22:34:11
Attachments:
PDL-Graphics-PLplot-plplot.patch
|
I'm trying to build PDL-Graphics-PLplot 0.67 with plplot 5.11.0. First I need the attached patch to handle the name change. Next issue I'm running into is the plplot.t test segfaulting: $ LD_LIBRARY_PATH=../blib/arch/auto/PDL/Graphics/PLplot/ gdb perl GNU gdb (GDB) Fedora 7.9-11.fc23 Copyright (C) 2015 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from perl...Reading symbols from /home/orion/fedora/perl-PDL-Graphics-PLplot/PDL-Graphics-PLplot-0.67/t/perl...(no debugging symbols found)...done. (no debugging symbols found)...done. Missing separate debuginfos, use: dnf debuginfo-install perl-5.20.2-328.fc23.x86_64 (gdb) run -I../blib/lib ./plplot.t Starting program: /usr/bin/perl -I../blib/lib ./plplot.t [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib64/libthread_db.so.1". Detaching after fork from child process 26859. Program received signal SIGSEGV, Segmentation fault. 0x00007ffff2fd66fa in plP_state (op=op@entry=7) at /usr/src/debug/plplot-5.11.0/src/plcore.c:260 260 ( *plsc->dispatch_table->pl_state )( (struct PLStream_struct *) plsc, op ); (gdb) bt #0 0x00007ffff2fd66fa in plP_state (op=op@entry=7) at /usr/src/debug/plplot-5.11.0/src/plcore.c:260 #1 0x00007ffff2ff4e84 in c_plschr (def=<optimized out>, scale=<optimized out>) at /usr/src/debug/plplot-5.11.0/src/plsdef.c:209 #2 0x00007ffff32e1ab2 in pdl_plschr_readdata (__tr=0x15924e0) at PLplot.xs:11154 #3 0x00007ffff55a6194 in pdl.ensure_trans () from /usr/lib64/perl5/vendor_perl/auto/PDL/Core/Core.so #4 0x00007ffff55a5150 in pdl_make_trans_mutual () from /usr/lib64/perl5/vendor_perl/auto/PDL/Core/Core.so #5 0x00007ffff32ababf in XS_PDL_plschr (my_perl=<optimized out>, cv=<optimized out>) at PLplot.xs:50441 #6 0x00007ffff7aea6ab in Perl_pp_entersub () from /lib64/libperl.so.5.20 #7 0x00007ffff7ae2f36 in Perl_runops_standard () from /lib64/libperl.so.5.20 #8 0x00007ffff7a729c0 in perl_run () from /lib64/libperl.so.5.20 #9 0x0000000000400d79 in main () (gdb) list 255 plbuf_state( plsc, op ); 256 257 save_locale = plsave_set_locale(); 258 if ( !plsc->stream_closed ) 259 { 260 ( *plsc->dispatch_table->pl_state )( (struct PLStream_struct *) plsc, op ); 261 } 262 plrestore_locale( save_locale ); 263 } 264 (gdb) print plsc $1 = (PLStream *) 0x7ffff321eaa0 <pls0> (gdb) print op $2 = 7 (gdb) print plsc->dispatch_table $3 = (PLDispatchTable *) 0x0 (gdb) print *plsc $2 = {ipls = 0, level = 0, verbose = 0, debug = 0, initialized = 0, dev_initialized = 0, program = 0x0, coordinate_transform = 0x0, coordinate_transform_data = 0x0, icol0 = 0, ncol0 = 16, icol1 = 0, ncol1 = 0, ncp1 = 0, curcmap = 0, cmap1_min = 0, cmap1_max = 0, curcolor = {r = 0 '\000', g = 0 '\000', b = 0 '\000', a = 0, name = 0x0}, tmpcolor = { r = 0 '\000', g = 0 '\000', b = 0 '\000', a = 0, name = 0x0}, cmap0 = 0x155e310, cmap1 = 0x0, cmap1cp = {{h = 0, l = 0, s = 0, p = 0, a = 0, alt_hue_path = 0} <repeats 256 times>}, width = 0, widthset = 0, widthlock = 0, arrow_x = 0x0, arrow_y = 0x0, arrow_npts = 0, arrow_fill = 0, dispatch_table = 0x0, plbuf_read = 0, plbuf_write = 0, device = 0, dev_minor = 0, termin = 0, graphx = 0, nopause = 0, color = 0, colorset = 0, family = 0, member = 0, finc = 0, fflen = 0, bytemax = 0, famadv = 0, dev_fill0 = 0, dev_fill1 = 0, dev_dash = 0, dev_di = 0, dev_flush = 0, dev_swin = 0, dev_text = 0, dev_xor = 0, dev_clear = 0, dev_fastimg = 0, dev_arc = 0, DevName = "xfig", '\000' <repeats 75 times>, OutFile = 0x0, BaseName = 0x151a800 "test2.xfig", FileName = 0x155e2d0 "test2.xfig", output_type = 0, bytecnt = 0, page = 0, linepos = 0, pdfs = 0x0, dev_npts = 0, dev_x = 0x0, dev_y = 0x0, dev_nptsX = 0, dev_nptsY = 0, dev_ix = 0x0, dev_iy = 0x0, dev_z = 0x0, dev_zmin = 0, dev_zmax = 0, imclxmin = 0, imclxmax = 0, imclymin = 0, imclymax = 0, dev = 0x0, dev_data = 0x0, KeyEH = 0x0, KeyEH_data = 0x0, ButtonEH = 0x0, ButtonEH_data = 0x0, LocateEH = 0x0, LocateEH_data = 0x0, bop_handler = 0x0, bop_data = 0x0, eop_handler = 0x0, eop_data = 0x0, xdpi = 0, ydpi = 0, xlength = 0, ylength = 0, xoffset = 0, yoffset = 0, pageset = 0, hack = 0, tidy = 0x0, tidy_data = 0x0, errcode = 0x0, errmsg = 0x0, geometry = 0x0, window_id = 0, nopixmap = 0, db = 0, ext_resize_draw = 0, server_name = 0x0, server_host = 0x0, server_port = 0x0, user = 0x0, plserver = 0x0, plwindow = 0x0, auto_path = 0x0, tk_file = 0x0, bufmax = 0, dp = 0, server_nokill = 0, plbuf_buffer_grow = 0, plbuf_buffer_size = 0, plbuf_buffer = 0x0, plbuf_top = 0, plbuf_readpos = 0, plbufOwner = 0, difilt = 0, diclpxmi = 0, diclpxma = 0, diclpymi = 0, diclpyma = 0, dipxmin = 0, dipymin = 0, dipxmax = 0, dipymax = 0, dipxax = 0, dipxb = 0, dipyay = 0, dipyb = 0, aspdev = 0, aspect = 0, aspori = 0, caspfactor = 0, mar = 0, jx = 0, jy = 0, didxax = 0, didxb = 0, didyay = 0, didyb = 0, diorot = 0, dioxax = 0, dioxay = 0, dioxb = 0, dioyax = 0, dioyay = 0, dioyb = 0, dimxax = 0, dimxb = 0, dimyay = 0, dimyb = 0, dimxmin = 0, dimymin = 0, dimxmax = 0, dimymax = 0, dimxpmm = 0, dimypmm = 0, page_status = 0, freeaspect = 0, portrait = 0, patt = 0, inclin = {0, 0}, delta = {0, 0}, nps = 0, currx = 0, curry = 0, mark = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, space = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, nms = 0, timecnt = 0, alarm = 0, pendn = 0, curel = 0, esc = 0 '\000', scale = 0, chrdef = 0, chrht = 0, symdef = 0, symht = 0, majdef = 0, majht = 0, mindef = 0, minht = 0, setpre = 0, precis = 0, xdigmax = 0, ydigmax = 0, zdigmax = 0, xdigits = 0, ydigits = 0, zdigits = 0, timefmt = 0x0, label_func = 0x0, label_data = 0x0, vppxmi = 0, vppxma = 0, vppymi = 0, vppyma = 0, sppxmi = 0, sppxma = 0, sppymi = 0, sppyma = 0, clpxmi = 0, clpxma = 0, clpymi = 0, clpyma = 0, phyxmi = 0, phyxma = 0, phyxlen = 0, phyymi = 0, phyyma = 0, phyylen = 0, umx = 0, umy = 0, xpmm = 0, ypmm = 0, base3x = 0, base3y = 0, basecx = 0, basecy = 0, domxmi = 0, domxma = 0, domymi = 0, domyma = 0, zzscl = 0, ranmi = 0, ranma = 0, cxx = 0, cxy = 0, cyx = 0, cyy = 0, cyz = 0, czx = 0, czy = 0, czz = 0, nplwin = 0, plwin = {{dxmi = 0, dxma = 0, dymi = 0, dyma = 0, wxmi = 0, wxma = 0, wymi = 0, wyma = 0} <repeats 64 times>}, nsubx = 0, nsuby = 0, cursub = 0, spdxmi = 0, spdxma = 0, spdymi = 0, spdyma = 0, vpdxmi = 0, vpdxma = 0, vpdymi = 0, vpdyma = 0, vpwxmi = 0, vpwxma = 0, vpwymi = 0, vpwyma = 0, wpxscl = 0, wpxoff = 0, wpyscl = 0, wpyoff = 0, wmxscl = 0, wmxoff = 0, wmyscl = 0, wmyoff = 0, wdxscl = 0, wdxoff = 0, wdyscl = 0, wdyoff = 0, dev_compression = 0, cfont = 0, FT = 0x0, plPlotterPtr = 0x0, dev_unicode = 0, alt_unicode = 0, fci = 0, dev_hrshsym = 0, original_chrdef = 0, original_chrht = 0, psdoc = 0x0, qsasconfig = 0x0, dev_gradient = 0, ngradient = 0, xgradient = 0x0, ygradient = 0x0, n_polygon = 0, x_polygon = 0x0, y_polygon = 0x0, stream_closed = 0, line_style = 0, dev_mem_alpha = 0, has_string_length = 0, string_length = 0, get_string_length = 0, dev_eofill = 0, dev_modeset = 0, if_boxbb = 0, boxbb_xmin = 0, boxbb_xmax = 0, boxbb_ymin = 0, boxbb_ymax = 0, mf_infile = 0x0, mf_outfile = 0x0} This seems to happen right away: use PDL; use PDL::Config; use PDL::Graphics::PLplot; use Test::More qw(no_plan); # Use xfig driver because it should always be installed. #my $dev = 'png'; my $dev = 'xfig'; # redirect STDERR to purge silly 'opened *.xfig' messages my ($pl, $x, $y, $min, $max, $oldwin, $nbins); ### # Initial test to work around font file brain damage: for some kinds of # PLplot errors, control never returns to us. FMH. # --CED ### my $tmpdir = $PDL::Config{TEMPDIR} || "/tmp"; my $tmpfile = $tmpdir . "/foo$$.$dev"; $pl = PDL::Graphics::PLplot->new (DEV => $dev, FILE => "test2.$dev", BACKGROUND => [255,255,255]); Anything else to look for? -- Orion Poplawski Technical Manager 303-415-9701 x222 NWRA, Boulder/CoRA Office FAX: 303-415-9702 3380 Mitchell Lane or...@nw... Boulder, CO 80301 http://www.nwra.com |
From: Doug H. <dh...@uc...> - 2015-04-25 00:04:52
|
Hi Orion: Thanks for the patch. I'll look into this next week and try to put out an updated PDL-Graphics-PLplot. Regards, Doug Hunt On 04/24/15 16:34, Orion Poplawski wrote: > I'm trying to build PDL-Graphics-PLplot 0.67 with plplot 5.11.0. First I need > the attached patch to handle the name change. > > Next issue I'm running into is the plplot.t test segfaulting: > > $ LD_LIBRARY_PATH=../blib/arch/auto/PDL/Graphics/PLplot/ gdb perl > GNU gdb (GDB) Fedora 7.9-11.fc23 > Copyright (C) 2015 Free Software Foundation, Inc. > License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. Type "show copying" > and "show warranty" for details. > This GDB was configured as "x86_64-redhat-linux-gnu". > Type "show configuration" for configuration details. > For bug reporting instructions, please see: > <http://www.gnu.org/software/gdb/bugs/>. > Find the GDB manual and other documentation resources online at: > <http://www.gnu.org/software/gdb/documentation/>. > For help, type "help". > Type "apropos word" to search for commands related to "word"... > Reading symbols from perl...Reading symbols from > /home/orion/fedora/perl-PDL-Graphics-PLplot/PDL-Graphics-PLplot-0.67/t/perl...(no > debugging symbols found)...done. > (no debugging symbols found)...done. > Missing separate debuginfos, use: dnf debuginfo-install > perl-5.20.2-328.fc23.x86_64 > (gdb) run -I../blib/lib ./plplot.t > Starting program: /usr/bin/perl -I../blib/lib ./plplot.t > [Thread debugging using libthread_db enabled] > Using host libthread_db library "/lib64/libthread_db.so.1". > Detaching after fork from child process 26859. > > Program received signal SIGSEGV, Segmentation fault. > 0x00007ffff2fd66fa in plP_state (op=op@entry=7) > at /usr/src/debug/plplot-5.11.0/src/plcore.c:260 > 260 ( *plsc->dispatch_table->pl_state )( (struct PLStream_struct > *) plsc, op ); > (gdb) bt > #0 0x00007ffff2fd66fa in plP_state (op=op@entry=7) > at /usr/src/debug/plplot-5.11.0/src/plcore.c:260 > #1 0x00007ffff2ff4e84 in c_plschr (def=<optimized out>, scale=<optimized out>) > at /usr/src/debug/plplot-5.11.0/src/plsdef.c:209 > #2 0x00007ffff32e1ab2 in pdl_plschr_readdata (__tr=0x15924e0) at PLplot.xs:11154 > #3 0x00007ffff55a6194 in pdl.ensure_trans () > from /usr/lib64/perl5/vendor_perl/auto/PDL/Core/Core.so > #4 0x00007ffff55a5150 in pdl_make_trans_mutual () > from /usr/lib64/perl5/vendor_perl/auto/PDL/Core/Core.so > #5 0x00007ffff32ababf in XS_PDL_plschr (my_perl=<optimized out>, > cv=<optimized out>) > at PLplot.xs:50441 > #6 0x00007ffff7aea6ab in Perl_pp_entersub () from /lib64/libperl.so.5.20 > #7 0x00007ffff7ae2f36 in Perl_runops_standard () from /lib64/libperl.so.5.20 > #8 0x00007ffff7a729c0 in perl_run () from /lib64/libperl.so.5.20 > #9 0x0000000000400d79 in main () > (gdb) list > 255 plbuf_state( plsc, op ); > 256 > 257 save_locale = plsave_set_locale(); > 258 if ( !plsc->stream_closed ) > 259 { > 260 ( *plsc->dispatch_table->pl_state )( (struct PLStream_struct > *) plsc, op ); > 261 } > 262 plrestore_locale( save_locale ); > 263 } > 264 > (gdb) print plsc > $1 = (PLStream *) 0x7ffff321eaa0 <pls0> > (gdb) print op > $2 = 7 > (gdb) print plsc->dispatch_table > $3 = (PLDispatchTable *) 0x0 > (gdb) print *plsc > $2 = {ipls = 0, level = 0, verbose = 0, debug = 0, initialized = 0, > dev_initialized = 0, > program = 0x0, coordinate_transform = 0x0, coordinate_transform_data = 0x0, > icol0 = 0, > ncol0 = 16, icol1 = 0, ncol1 = 0, ncp1 = 0, curcmap = 0, cmap1_min = 0, > cmap1_max = 0, > curcolor = {r = 0 '\000', g = 0 '\000', b = 0 '\000', a = 0, name = 0x0}, > tmpcolor = { > r = 0 '\000', g = 0 '\000', b = 0 '\000', a = 0, name = 0x0}, cmap0 = > 0x155e310, > cmap1 = 0x0, cmap1cp = {{h = 0, l = 0, s = 0, p = 0, a = 0, > alt_hue_path = 0} <repeats 256 times>}, width = 0, widthset = 0, > widthlock = 0, > arrow_x = 0x0, arrow_y = 0x0, arrow_npts = 0, arrow_fill = 0, dispatch_table > = 0x0, > plbuf_read = 0, plbuf_write = 0, device = 0, dev_minor = 0, termin = 0, > graphx = 0, > nopause = 0, color = 0, colorset = 0, family = 0, member = 0, finc = 0, > fflen = 0, > bytemax = 0, famadv = 0, dev_fill0 = 0, dev_fill1 = 0, dev_dash = 0, dev_di = 0, > dev_flush = 0, dev_swin = 0, dev_text = 0, dev_xor = 0, dev_clear = 0, > dev_fastimg = 0, > dev_arc = 0, DevName = "xfig", '\000' <repeats 75 times>, OutFile = 0x0, > BaseName = 0x151a800 "test2.xfig", FileName = 0x155e2d0 "test2.xfig", > output_type = 0, > bytecnt = 0, page = 0, linepos = 0, pdfs = 0x0, dev_npts = 0, dev_x = 0x0, > dev_y = 0x0, > dev_nptsX = 0, dev_nptsY = 0, dev_ix = 0x0, dev_iy = 0x0, dev_z = 0x0, > dev_zmin = 0, > dev_zmax = 0, imclxmin = 0, imclxmax = 0, imclymin = 0, imclymax = 0, dev = 0x0, > dev_data = 0x0, KeyEH = 0x0, KeyEH_data = 0x0, ButtonEH = 0x0, ButtonEH_data > = 0x0, > LocateEH = 0x0, LocateEH_data = 0x0, bop_handler = 0x0, bop_data = 0x0, > eop_handler = 0x0, > eop_data = 0x0, xdpi = 0, ydpi = 0, xlength = 0, ylength = 0, xoffset = 0, > yoffset = 0, > pageset = 0, hack = 0, tidy = 0x0, tidy_data = 0x0, errcode = 0x0, errmsg = 0x0, > geometry = 0x0, window_id = 0, nopixmap = 0, db = 0, ext_resize_draw = 0, > server_name = 0x0, > server_host = 0x0, server_port = 0x0, user = 0x0, plserver = 0x0, plwindow = > 0x0, > auto_path = 0x0, tk_file = 0x0, bufmax = 0, dp = 0, server_nokill = 0, > plbuf_buffer_grow = 0, plbuf_buffer_size = 0, plbuf_buffer = 0x0, plbuf_top = 0, > plbuf_readpos = 0, plbufOwner = 0, difilt = 0, diclpxmi = 0, diclpxma = 0, > diclpymi = 0, > diclpyma = 0, dipxmin = 0, dipymin = 0, dipxmax = 0, dipymax = 0, dipxax = > 0, dipxb = 0, > dipyay = 0, dipyb = 0, aspdev = 0, aspect = 0, aspori = 0, caspfactor = 0, > mar = 0, jx = 0, > jy = 0, didxax = 0, didxb = 0, didyay = 0, didyb = 0, diorot = 0, dioxax = > 0, dioxay = 0, > dioxb = 0, dioyax = 0, dioyay = 0, dioyb = 0, dimxax = 0, dimxb = 0, dimyay > = 0, dimyb = 0, > dimxmin = 0, dimymin = 0, dimxmax = 0, dimymax = 0, dimxpmm = 0, dimypmm = 0, > page_status = 0, freeaspect = 0, portrait = 0, patt = 0, inclin = {0, 0}, > delta = {0, 0}, > nps = 0, currx = 0, curry = 0, mark = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, space > = {0, 0, 0, 0, > 0, 0, 0, 0, 0, 0}, nms = 0, timecnt = 0, alarm = 0, pendn = 0, curel = 0, > esc = 0 '\000', > scale = 0, chrdef = 0, chrht = 0, symdef = 0, symht = 0, majdef = 0, majht = > 0, mindef = 0, > minht = 0, setpre = 0, precis = 0, xdigmax = 0, ydigmax = 0, zdigmax = 0, > xdigits = 0, > ydigits = 0, zdigits = 0, timefmt = 0x0, label_func = 0x0, label_data = 0x0, > vppxmi = 0, > vppxma = 0, vppymi = 0, vppyma = 0, sppxmi = 0, sppxma = 0, sppymi = 0, > sppyma = 0, > clpxmi = 0, clpxma = 0, clpymi = 0, clpyma = 0, phyxmi = 0, phyxma = 0, > phyxlen = 0, > phyymi = 0, phyyma = 0, phyylen = 0, umx = 0, umy = 0, xpmm = 0, ypmm = 0, > base3x = 0, > base3y = 0, basecx = 0, basecy = 0, domxmi = 0, domxma = 0, domymi = 0, > domyma = 0, > zzscl = 0, ranmi = 0, ranma = 0, cxx = 0, cxy = 0, cyx = 0, cyy = 0, cyz = > 0, czx = 0, > czy = 0, czz = 0, nplwin = 0, plwin = {{dxmi = 0, dxma = 0, dymi = 0, dyma = > 0, wxmi = 0, > wxma = 0, wymi = 0, wyma = 0} <repeats 64 times>}, nsubx = 0, nsuby = 0, > cursub = 0, > spdxmi = 0, spdxma = 0, spdymi = 0, spdyma = 0, vpdxmi = 0, vpdxma = 0, > vpdymi = 0, > vpdyma = 0, vpwxmi = 0, vpwxma = 0, vpwymi = 0, vpwyma = 0, wpxscl = 0, > wpxoff = 0, > wpyscl = 0, wpyoff = 0, wmxscl = 0, wmxoff = 0, wmyscl = 0, wmyoff = 0, > wdxscl = 0, > wdxoff = 0, wdyscl = 0, wdyoff = 0, dev_compression = 0, cfont = 0, FT = 0x0, > plPlotterPtr = 0x0, dev_unicode = 0, alt_unicode = 0, fci = 0, dev_hrshsym = 0, > original_chrdef = 0, original_chrht = 0, psdoc = 0x0, qsasconfig = 0x0, > dev_gradient = 0, > ngradient = 0, xgradient = 0x0, ygradient = 0x0, n_polygon = 0, x_polygon = 0x0, > y_polygon = 0x0, stream_closed = 0, line_style = 0, dev_mem_alpha = 0, > has_string_length = 0, string_length = 0, get_string_length = 0, dev_eofill = 0, > dev_modeset = 0, if_boxbb = 0, boxbb_xmin = 0, boxbb_xmax = 0, boxbb_ymin = 0, > boxbb_ymax = 0, mf_infile = 0x0, mf_outfile = 0x0} > > > This seems to happen right away: > > use PDL; > use PDL::Config; > use PDL::Graphics::PLplot; > use Test::More qw(no_plan); > > # Use xfig driver because it should always be installed. > #my $dev = 'png'; > my $dev = 'xfig'; > > # redirect STDERR to purge silly 'opened *.xfig' messages > my ($pl, $x, $y, $min, $max, $oldwin, $nbins); > > ### > # Initial test to work around font file brain damage: for some kinds of > # PLplot errors, control never returns to us. FMH. > # --CED > ### > > my $tmpdir = $PDL::Config{TEMPDIR} || "/tmp"; > my $tmpfile = $tmpdir . "/foo$$.$dev"; > > $pl = PDL::Graphics::PLplot->new (DEV => $dev, > FILE => "test2.$dev", > BACKGROUND => [255,255,255]); > > > Anything else to look for? > > |
From: Orion P. <or...@co...> - 2015-05-18 19:58:25
|
You can check here: http://pkgs.fedoraproject.org/cgit/perl-PDL-Graphics-PLplot.git/log/ for what the Fedora packager did for 5.11.0 support. On 04/24/2015 05:41 PM, Doug Hunt wrote: > Hi Orion: Thanks for the patch. I'll look into this next week and try to put > out > an updated PDL-Graphics-PLplot. > > Regards, > > Doug Hunt > > On 04/24/15 16:34, Orion Poplawski wrote: >> I'm trying to build PDL-Graphics-PLplot 0.67 with plplot 5.11.0. First I need >> the attached patch to handle the name change. >> >> Next issue I'm running into is the plplot.t test segfaulting: >> >> $ LD_LIBRARY_PATH=../blib/arch/auto/PDL/Graphics/PLplot/ gdb perl >> GNU gdb (GDB) Fedora 7.9-11.fc23 >> Copyright (C) 2015 Free Software Foundation, Inc. >> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> >> This is free software: you are free to change and redistribute it. >> There is NO WARRANTY, to the extent permitted by law. Type "show copying" >> and "show warranty" for details. >> This GDB was configured as "x86_64-redhat-linux-gnu". >> Type "show configuration" for configuration details. >> For bug reporting instructions, please see: >> <http://www.gnu.org/software/gdb/bugs/>. >> Find the GDB manual and other documentation resources online at: >> <http://www.gnu.org/software/gdb/documentation/>. >> For help, type "help". >> Type "apropos word" to search for commands related to "word"... >> Reading symbols from perl...Reading symbols from >> /home/orion/fedora/perl-PDL-Graphics-PLplot/PDL-Graphics-PLplot-0.67/t/perl...(no >> >> debugging symbols found)...done. >> (no debugging symbols found)...done. >> Missing separate debuginfos, use: dnf debuginfo-install >> perl-5.20.2-328.fc23.x86_64 >> (gdb) run -I../blib/lib ./plplot.t >> Starting program: /usr/bin/perl -I../blib/lib ./plplot.t >> [Thread debugging using libthread_db enabled] >> Using host libthread_db library "/lib64/libthread_db.so.1". >> Detaching after fork from child process 26859. >> >> Program received signal SIGSEGV, Segmentation fault. >> 0x00007ffff2fd66fa in plP_state (op=op@entry=7) >> at /usr/src/debug/plplot-5.11.0/src/plcore.c:260 >> 260 ( *plsc->dispatch_table->pl_state )( (struct PLStream_struct >> *) plsc, op ); >> (gdb) bt >> #0 0x00007ffff2fd66fa in plP_state (op=op@entry=7) >> at /usr/src/debug/plplot-5.11.0/src/plcore.c:260 >> #1 0x00007ffff2ff4e84 in c_plschr (def=<optimized out>, scale=<optimized out>) >> at /usr/src/debug/plplot-5.11.0/src/plsdef.c:209 >> #2 0x00007ffff32e1ab2 in pdl_plschr_readdata (__tr=0x15924e0) at >> PLplot.xs:11154 >> #3 0x00007ffff55a6194 in pdl.ensure_trans () >> from /usr/lib64/perl5/vendor_perl/auto/PDL/Core/Core.so >> #4 0x00007ffff55a5150 in pdl_make_trans_mutual () >> from /usr/lib64/perl5/vendor_perl/auto/PDL/Core/Core.so >> #5 0x00007ffff32ababf in XS_PDL_plschr (my_perl=<optimized out>, >> cv=<optimized out>) >> at PLplot.xs:50441 >> #6 0x00007ffff7aea6ab in Perl_pp_entersub () from /lib64/libperl.so.5.20 >> #7 0x00007ffff7ae2f36 in Perl_runops_standard () from /lib64/libperl.so.5.20 >> #8 0x00007ffff7a729c0 in perl_run () from /lib64/libperl.so.5.20 >> #9 0x0000000000400d79 in main () >> (gdb) list >> 255 plbuf_state( plsc, op ); >> 256 >> 257 save_locale = plsave_set_locale(); >> 258 if ( !plsc->stream_closed ) >> 259 { >> 260 ( *plsc->dispatch_table->pl_state )( (struct PLStream_struct >> *) plsc, op ); >> 261 } >> 262 plrestore_locale( save_locale ); >> 263 } >> 264 >> (gdb) print plsc >> $1 = (PLStream *) 0x7ffff321eaa0 <pls0> >> (gdb) print op >> $2 = 7 >> (gdb) print plsc->dispatch_table >> $3 = (PLDispatchTable *) 0x0 >> (gdb) print *plsc >> $2 = {ipls = 0, level = 0, verbose = 0, debug = 0, initialized = 0, >> dev_initialized = 0, >> program = 0x0, coordinate_transform = 0x0, coordinate_transform_data = 0x0, >> icol0 = 0, >> ncol0 = 16, icol1 = 0, ncol1 = 0, ncp1 = 0, curcmap = 0, cmap1_min = 0, >> cmap1_max = 0, >> curcolor = {r = 0 '\000', g = 0 '\000', b = 0 '\000', a = 0, name = 0x0}, >> tmpcolor = { >> r = 0 '\000', g = 0 '\000', b = 0 '\000', a = 0, name = 0x0}, cmap0 = >> 0x155e310, >> cmap1 = 0x0, cmap1cp = {{h = 0, l = 0, s = 0, p = 0, a = 0, >> alt_hue_path = 0} <repeats 256 times>}, width = 0, widthset = 0, >> widthlock = 0, >> arrow_x = 0x0, arrow_y = 0x0, arrow_npts = 0, arrow_fill = 0, dispatch_table >> = 0x0, >> plbuf_read = 0, plbuf_write = 0, device = 0, dev_minor = 0, termin = 0, >> graphx = 0, >> nopause = 0, color = 0, colorset = 0, family = 0, member = 0, finc = 0, >> fflen = 0, >> bytemax = 0, famadv = 0, dev_fill0 = 0, dev_fill1 = 0, dev_dash = 0, >> dev_di = 0, >> dev_flush = 0, dev_swin = 0, dev_text = 0, dev_xor = 0, dev_clear = 0, >> dev_fastimg = 0, >> dev_arc = 0, DevName = "xfig", '\000' <repeats 75 times>, OutFile = 0x0, >> BaseName = 0x151a800 "test2.xfig", FileName = 0x155e2d0 "test2.xfig", >> output_type = 0, >> bytecnt = 0, page = 0, linepos = 0, pdfs = 0x0, dev_npts = 0, dev_x = 0x0, >> dev_y = 0x0, >> dev_nptsX = 0, dev_nptsY = 0, dev_ix = 0x0, dev_iy = 0x0, dev_z = 0x0, >> dev_zmin = 0, >> dev_zmax = 0, imclxmin = 0, imclxmax = 0, imclymin = 0, imclymax = 0, dev >> = 0x0, >> dev_data = 0x0, KeyEH = 0x0, KeyEH_data = 0x0, ButtonEH = 0x0, ButtonEH_data >> = 0x0, >> LocateEH = 0x0, LocateEH_data = 0x0, bop_handler = 0x0, bop_data = 0x0, >> eop_handler = 0x0, >> eop_data = 0x0, xdpi = 0, ydpi = 0, xlength = 0, ylength = 0, xoffset = 0, >> yoffset = 0, >> pageset = 0, hack = 0, tidy = 0x0, tidy_data = 0x0, errcode = 0x0, errmsg >> = 0x0, >> geometry = 0x0, window_id = 0, nopixmap = 0, db = 0, ext_resize_draw = 0, >> server_name = 0x0, >> server_host = 0x0, server_port = 0x0, user = 0x0, plserver = 0x0, plwindow = >> 0x0, >> auto_path = 0x0, tk_file = 0x0, bufmax = 0, dp = 0, server_nokill = 0, >> plbuf_buffer_grow = 0, plbuf_buffer_size = 0, plbuf_buffer = 0x0, >> plbuf_top = 0, >> plbuf_readpos = 0, plbufOwner = 0, difilt = 0, diclpxmi = 0, diclpxma = 0, >> diclpymi = 0, >> diclpyma = 0, dipxmin = 0, dipymin = 0, dipxmax = 0, dipymax = 0, dipxax = >> 0, dipxb = 0, >> dipyay = 0, dipyb = 0, aspdev = 0, aspect = 0, aspori = 0, caspfactor = 0, >> mar = 0, jx = 0, >> jy = 0, didxax = 0, didxb = 0, didyay = 0, didyb = 0, diorot = 0, dioxax = >> 0, dioxay = 0, >> dioxb = 0, dioyax = 0, dioyay = 0, dioyb = 0, dimxax = 0, dimxb = 0, dimyay >> = 0, dimyb = 0, >> dimxmin = 0, dimymin = 0, dimxmax = 0, dimymax = 0, dimxpmm = 0, dimypmm >> = 0, >> page_status = 0, freeaspect = 0, portrait = 0, patt = 0, inclin = {0, 0}, >> delta = {0, 0}, >> nps = 0, currx = 0, curry = 0, mark = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, space >> = {0, 0, 0, 0, >> 0, 0, 0, 0, 0, 0}, nms = 0, timecnt = 0, alarm = 0, pendn = 0, curel = 0, >> esc = 0 '\000', >> scale = 0, chrdef = 0, chrht = 0, symdef = 0, symht = 0, majdef = 0, majht = >> 0, mindef = 0, >> minht = 0, setpre = 0, precis = 0, xdigmax = 0, ydigmax = 0, zdigmax = 0, >> xdigits = 0, >> ydigits = 0, zdigits = 0, timefmt = 0x0, label_func = 0x0, label_data = 0x0, >> vppxmi = 0, >> vppxma = 0, vppymi = 0, vppyma = 0, sppxmi = 0, sppxma = 0, sppymi = 0, >> sppyma = 0, >> clpxmi = 0, clpxma = 0, clpymi = 0, clpyma = 0, phyxmi = 0, phyxma = 0, >> phyxlen = 0, >> phyymi = 0, phyyma = 0, phyylen = 0, umx = 0, umy = 0, xpmm = 0, ypmm = 0, >> base3x = 0, >> base3y = 0, basecx = 0, basecy = 0, domxmi = 0, domxma = 0, domymi = 0, >> domyma = 0, >> zzscl = 0, ranmi = 0, ranma = 0, cxx = 0, cxy = 0, cyx = 0, cyy = 0, cyz = >> 0, czx = 0, >> czy = 0, czz = 0, nplwin = 0, plwin = {{dxmi = 0, dxma = 0, dymi = 0, dyma = >> 0, wxmi = 0, >> wxma = 0, wymi = 0, wyma = 0} <repeats 64 times>}, nsubx = 0, nsuby = 0, >> cursub = 0, >> spdxmi = 0, spdxma = 0, spdymi = 0, spdyma = 0, vpdxmi = 0, vpdxma = 0, >> vpdymi = 0, >> vpdyma = 0, vpwxmi = 0, vpwxma = 0, vpwymi = 0, vpwyma = 0, wpxscl = 0, >> wpxoff = 0, >> wpyscl = 0, wpyoff = 0, wmxscl = 0, wmxoff = 0, wmyscl = 0, wmyoff = 0, >> wdxscl = 0, >> wdxoff = 0, wdyscl = 0, wdyoff = 0, dev_compression = 0, cfont = 0, FT = >> 0x0, >> plPlotterPtr = 0x0, dev_unicode = 0, alt_unicode = 0, fci = 0, >> dev_hrshsym = 0, >> original_chrdef = 0, original_chrht = 0, psdoc = 0x0, qsasconfig = 0x0, >> dev_gradient = 0, >> ngradient = 0, xgradient = 0x0, ygradient = 0x0, n_polygon = 0, x_polygon >> = 0x0, >> y_polygon = 0x0, stream_closed = 0, line_style = 0, dev_mem_alpha = 0, >> has_string_length = 0, string_length = 0, get_string_length = 0, >> dev_eofill = 0, >> dev_modeset = 0, if_boxbb = 0, boxbb_xmin = 0, boxbb_xmax = 0, boxbb_ymin >> = 0, >> boxbb_ymax = 0, mf_infile = 0x0, mf_outfile = 0x0} >> >> >> This seems to happen right away: >> >> use PDL; >> use PDL::Config; >> use PDL::Graphics::PLplot; >> use Test::More qw(no_plan); >> >> # Use xfig driver because it should always be installed. >> #my $dev = 'png'; >> my $dev = 'xfig'; >> >> # redirect STDERR to purge silly 'opened *.xfig' messages >> my ($pl, $x, $y, $min, $max, $oldwin, $nbins); >> >> ### >> # Initial test to work around font file brain damage: for some kinds of >> # PLplot errors, control never returns to us. FMH. >> # --CED >> ### >> >> my $tmpdir = $PDL::Config{TEMPDIR} || "/tmp"; >> my $tmpfile = $tmpdir . "/foo$$.$dev"; >> >> $pl = PDL::Graphics::PLplot->new (DEV => $dev, >> FILE => "test2.$dev", >> BACKGROUND => [255,255,255]); >> >> >> Anything else to look for? >> >> > -- Orion Poplawski Technical Manager 303-415-9701 x222 NWRA, Boulder/CoRA Office FAX: 303-415-9702 3380 Mitchell Lane or...@nw... Boulder, CO 80301 http://www.nwra.com |
From: Doug H. <dh...@uc...> - 2015-05-18 21:00:16
|
Hi Orion: I put a new version of PDL-Graphics-PLplot (v 0.71) on CPAN that does something similar. I think my update is a bit cleaner. Regards, Doug On 05/18/15 13:56, Orion Poplawski wrote: > You can check here: > > http://pkgs.fedoraproject.org/cgit/perl-PDL-Graphics-PLplot.git/log/ > > for what the Fedora packager did for 5.11.0 support. > > On 04/24/2015 05:41 PM, Doug Hunt wrote: >> Hi Orion: Thanks for the patch. I'll look into this next week and try to put >> out >> an updated PDL-Graphics-PLplot. >> >> Regards, >> >> Doug Hunt >> >> On 04/24/15 16:34, Orion Poplawski wrote: >>> I'm trying to build PDL-Graphics-PLplot 0.67 with plplot 5.11.0. First I need >>> the attached patch to handle the name change. >>> >>> Next issue I'm running into is the plplot.t test segfaulting: >>> >>> $ LD_LIBRARY_PATH=../blib/arch/auto/PDL/Graphics/PLplot/ gdb perl >>> GNU gdb (GDB) Fedora 7.9-11.fc23 >>> Copyright (C) 2015 Free Software Foundation, Inc. >>> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> >>> This is free software: you are free to change and redistribute it. >>> There is NO WARRANTY, to the extent permitted by law. Type "show copying" >>> and "show warranty" for details. >>> This GDB was configured as "x86_64-redhat-linux-gnu". >>> Type "show configuration" for configuration details. >>> For bug reporting instructions, please see: >>> <http://www.gnu.org/software/gdb/bugs/>. >>> Find the GDB manual and other documentation resources online at: >>> <http://www.gnu.org/software/gdb/documentation/>. >>> For help, type "help". >>> Type "apropos word" to search for commands related to "word"... >>> Reading symbols from perl...Reading symbols from >>> /home/orion/fedora/perl-PDL-Graphics-PLplot/PDL-Graphics-PLplot-0.67/t/perl...(no >>> >>> debugging symbols found)...done. >>> (no debugging symbols found)...done. >>> Missing separate debuginfos, use: dnf debuginfo-install >>> perl-5.20.2-328.fc23.x86_64 >>> (gdb) run -I../blib/lib ./plplot.t >>> Starting program: /usr/bin/perl -I../blib/lib ./plplot.t >>> [Thread debugging using libthread_db enabled] >>> Using host libthread_db library "/lib64/libthread_db.so.1". >>> Detaching after fork from child process 26859. >>> >>> Program received signal SIGSEGV, Segmentation fault. >>> 0x00007ffff2fd66fa in plP_state (op=op@entry=7) >>> at /usr/src/debug/plplot-5.11.0/src/plcore.c:260 >>> 260 ( *plsc->dispatch_table->pl_state )( (struct PLStream_struct >>> *) plsc, op ); >>> (gdb) bt >>> #0 0x00007ffff2fd66fa in plP_state (op=op@entry=7) >>> at /usr/src/debug/plplot-5.11.0/src/plcore.c:260 >>> #1 0x00007ffff2ff4e84 in c_plschr (def=<optimized out>, scale=<optimized out>) >>> at /usr/src/debug/plplot-5.11.0/src/plsdef.c:209 >>> #2 0x00007ffff32e1ab2 in pdl_plschr_readdata (__tr=0x15924e0) at >>> PLplot.xs:11154 >>> #3 0x00007ffff55a6194 in pdl.ensure_trans () >>> from /usr/lib64/perl5/vendor_perl/auto/PDL/Core/Core.so >>> #4 0x00007ffff55a5150 in pdl_make_trans_mutual () >>> from /usr/lib64/perl5/vendor_perl/auto/PDL/Core/Core.so >>> #5 0x00007ffff32ababf in XS_PDL_plschr (my_perl=<optimized out>, >>> cv=<optimized out>) >>> at PLplot.xs:50441 >>> #6 0x00007ffff7aea6ab in Perl_pp_entersub () from /lib64/libperl.so.5.20 >>> #7 0x00007ffff7ae2f36 in Perl_runops_standard () from /lib64/libperl.so.5.20 >>> #8 0x00007ffff7a729c0 in perl_run () from /lib64/libperl.so.5.20 >>> #9 0x0000000000400d79 in main () >>> (gdb) list >>> 255 plbuf_state( plsc, op ); >>> 256 >>> 257 save_locale = plsave_set_locale(); >>> 258 if ( !plsc->stream_closed ) >>> 259 { >>> 260 ( *plsc->dispatch_table->pl_state )( (struct PLStream_struct >>> *) plsc, op ); >>> 261 } >>> 262 plrestore_locale( save_locale ); >>> 263 } >>> 264 >>> (gdb) print plsc >>> $1 = (PLStream *) 0x7ffff321eaa0 <pls0> >>> (gdb) print op >>> $2 = 7 >>> (gdb) print plsc->dispatch_table >>> $3 = (PLDispatchTable *) 0x0 >>> (gdb) print *plsc >>> $2 = {ipls = 0, level = 0, verbose = 0, debug = 0, initialized = 0, >>> dev_initialized = 0, >>> program = 0x0, coordinate_transform = 0x0, coordinate_transform_data = 0x0, >>> icol0 = 0, >>> ncol0 = 16, icol1 = 0, ncol1 = 0, ncp1 = 0, curcmap = 0, cmap1_min = 0, >>> cmap1_max = 0, >>> curcolor = {r = 0 '\000', g = 0 '\000', b = 0 '\000', a = 0, name = 0x0}, >>> tmpcolor = { >>> r = 0 '\000', g = 0 '\000', b = 0 '\000', a = 0, name = 0x0}, cmap0 = >>> 0x155e310, >>> cmap1 = 0x0, cmap1cp = {{h = 0, l = 0, s = 0, p = 0, a = 0, >>> alt_hue_path = 0} <repeats 256 times>}, width = 0, widthset = 0, >>> widthlock = 0, >>> arrow_x = 0x0, arrow_y = 0x0, arrow_npts = 0, arrow_fill = 0, dispatch_table >>> = 0x0, >>> plbuf_read = 0, plbuf_write = 0, device = 0, dev_minor = 0, termin = 0, >>> graphx = 0, >>> nopause = 0, color = 0, colorset = 0, family = 0, member = 0, finc = 0, >>> fflen = 0, >>> bytemax = 0, famadv = 0, dev_fill0 = 0, dev_fill1 = 0, dev_dash = 0, >>> dev_di = 0, >>> dev_flush = 0, dev_swin = 0, dev_text = 0, dev_xor = 0, dev_clear = 0, >>> dev_fastimg = 0, >>> dev_arc = 0, DevName = "xfig", '\000' <repeats 75 times>, OutFile = 0x0, >>> BaseName = 0x151a800 "test2.xfig", FileName = 0x155e2d0 "test2.xfig", >>> output_type = 0, >>> bytecnt = 0, page = 0, linepos = 0, pdfs = 0x0, dev_npts = 0, dev_x = 0x0, >>> dev_y = 0x0, >>> dev_nptsX = 0, dev_nptsY = 0, dev_ix = 0x0, dev_iy = 0x0, dev_z = 0x0, >>> dev_zmin = 0, >>> dev_zmax = 0, imclxmin = 0, imclxmax = 0, imclymin = 0, imclymax = 0, dev >>> = 0x0, >>> dev_data = 0x0, KeyEH = 0x0, KeyEH_data = 0x0, ButtonEH = 0x0, ButtonEH_data >>> = 0x0, >>> LocateEH = 0x0, LocateEH_data = 0x0, bop_handler = 0x0, bop_data = 0x0, >>> eop_handler = 0x0, >>> eop_data = 0x0, xdpi = 0, ydpi = 0, xlength = 0, ylength = 0, xoffset = 0, >>> yoffset = 0, >>> pageset = 0, hack = 0, tidy = 0x0, tidy_data = 0x0, errcode = 0x0, errmsg >>> = 0x0, >>> geometry = 0x0, window_id = 0, nopixmap = 0, db = 0, ext_resize_draw = 0, >>> server_name = 0x0, >>> server_host = 0x0, server_port = 0x0, user = 0x0, plserver = 0x0, plwindow = >>> 0x0, >>> auto_path = 0x0, tk_file = 0x0, bufmax = 0, dp = 0, server_nokill = 0, >>> plbuf_buffer_grow = 0, plbuf_buffer_size = 0, plbuf_buffer = 0x0, >>> plbuf_top = 0, >>> plbuf_readpos = 0, plbufOwner = 0, difilt = 0, diclpxmi = 0, diclpxma = 0, >>> diclpymi = 0, >>> diclpyma = 0, dipxmin = 0, dipymin = 0, dipxmax = 0, dipymax = 0, dipxax = >>> 0, dipxb = 0, >>> dipyay = 0, dipyb = 0, aspdev = 0, aspect = 0, aspori = 0, caspfactor = 0, >>> mar = 0, jx = 0, >>> jy = 0, didxax = 0, didxb = 0, didyay = 0, didyb = 0, diorot = 0, dioxax = >>> 0, dioxay = 0, >>> dioxb = 0, dioyax = 0, dioyay = 0, dioyb = 0, dimxax = 0, dimxb = 0, dimyay >>> = 0, dimyb = 0, >>> dimxmin = 0, dimymin = 0, dimxmax = 0, dimymax = 0, dimxpmm = 0, dimypmm >>> = 0, >>> page_status = 0, freeaspect = 0, portrait = 0, patt = 0, inclin = {0, 0}, >>> delta = {0, 0}, >>> nps = 0, currx = 0, curry = 0, mark = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, space >>> = {0, 0, 0, 0, >>> 0, 0, 0, 0, 0, 0}, nms = 0, timecnt = 0, alarm = 0, pendn = 0, curel = 0, >>> esc = 0 '\000', >>> scale = 0, chrdef = 0, chrht = 0, symdef = 0, symht = 0, majdef = 0, majht = >>> 0, mindef = 0, >>> minht = 0, setpre = 0, precis = 0, xdigmax = 0, ydigmax = 0, zdigmax = 0, >>> xdigits = 0, >>> ydigits = 0, zdigits = 0, timefmt = 0x0, label_func = 0x0, label_data = 0x0, >>> vppxmi = 0, >>> vppxma = 0, vppymi = 0, vppyma = 0, sppxmi = 0, sppxma = 0, sppymi = 0, >>> sppyma = 0, >>> clpxmi = 0, clpxma = 0, clpymi = 0, clpyma = 0, phyxmi = 0, phyxma = 0, >>> phyxlen = 0, >>> phyymi = 0, phyyma = 0, phyylen = 0, umx = 0, umy = 0, xpmm = 0, ypmm = 0, >>> base3x = 0, >>> base3y = 0, basecx = 0, basecy = 0, domxmi = 0, domxma = 0, domymi = 0, >>> domyma = 0, >>> zzscl = 0, ranmi = 0, ranma = 0, cxx = 0, cxy = 0, cyx = 0, cyy = 0, cyz = >>> 0, czx = 0, >>> czy = 0, czz = 0, nplwin = 0, plwin = {{dxmi = 0, dxma = 0, dymi = 0, dyma = >>> 0, wxmi = 0, >>> wxma = 0, wymi = 0, wyma = 0} <repeats 64 times>}, nsubx = 0, nsuby = 0, >>> cursub = 0, >>> spdxmi = 0, spdxma = 0, spdymi = 0, spdyma = 0, vpdxmi = 0, vpdxma = 0, >>> vpdymi = 0, >>> vpdyma = 0, vpwxmi = 0, vpwxma = 0, vpwymi = 0, vpwyma = 0, wpxscl = 0, >>> wpxoff = 0, >>> wpyscl = 0, wpyoff = 0, wmxscl = 0, wmxoff = 0, wmyscl = 0, wmyoff = 0, >>> wdxscl = 0, >>> wdxoff = 0, wdyscl = 0, wdyoff = 0, dev_compression = 0, cfont = 0, FT = >>> 0x0, >>> plPlotterPtr = 0x0, dev_unicode = 0, alt_unicode = 0, fci = 0, >>> dev_hrshsym = 0, >>> original_chrdef = 0, original_chrht = 0, psdoc = 0x0, qsasconfig = 0x0, >>> dev_gradient = 0, >>> ngradient = 0, xgradient = 0x0, ygradient = 0x0, n_polygon = 0, x_polygon >>> = 0x0, >>> y_polygon = 0x0, stream_closed = 0, line_style = 0, dev_mem_alpha = 0, >>> has_string_length = 0, string_length = 0, get_string_length = 0, >>> dev_eofill = 0, >>> dev_modeset = 0, if_boxbb = 0, boxbb_xmin = 0, boxbb_xmax = 0, boxbb_ymin >>> = 0, >>> boxbb_ymax = 0, mf_infile = 0x0, mf_outfile = 0x0} >>> >>> >>> This seems to happen right away: >>> >>> use PDL; >>> use PDL::Config; >>> use PDL::Graphics::PLplot; >>> use Test::More qw(no_plan); >>> >>> # Use xfig driver because it should always be installed. >>> #my $dev = 'png'; >>> my $dev = 'xfig'; >>> >>> # redirect STDERR to purge silly 'opened *.xfig' messages >>> my ($pl, $x, $y, $min, $max, $oldwin, $nbins); >>> >>> ### >>> # Initial test to work around font file brain damage: for some kinds of >>> # PLplot errors, control never returns to us. FMH. >>> # --CED >>> ### >>> >>> my $tmpdir = $PDL::Config{TEMPDIR} || "/tmp"; >>> my $tmpfile = $tmpdir . "/foo$$.$dev"; >>> >>> $pl = PDL::Graphics::PLplot->new (DEV => $dev, >>> FILE => "test2.$dev", >>> BACKGROUND => [255,255,255]); >>> >>> >>> Anything else to look for? >>> >>> > |