[OpenIndiana-discuss] OI Hipster: GDL not working because of broken plplot

Aurélien Larcher aurelien.larcher at gmail.com
Fri Sep 7 15:09:03 UTC 2018


On Fri, Sep 7, 2018 at 4:04 PM, Alexander Pyhalov <alp at sfedu.ru> wrote:

> Hi.
>
> The issue is that we set relative paths in cmake.mk. I see that
> userland-gate cmake.mk uses full paths there. We coud either patch plplot
> to respect CMAKE_PREFIX in include files or fix cmake.mk. But if we touch
> cmake.mk,
> affected components should be checked.
>
> Aurelen, what do you think?
>
>
When I wrote cmake.mk I checked in the documentation that
CMAKE_INSTALL_FOODIR paths were defined as relative to CMAKE_INSTALL_PREFIX
so our cmake.mk is correct. Absolute path are given by
CMAKE_INSTALL_FULL_FOODIR.
If solaris-userland defines them otherwise then they do not follow the
convention.




> Best regards,
> Alexander Pyhalov,
> system administrator of Southern Federal University IT department
>
>
>
> ________________________________________
> От: Udo Grabowski (IMK) <udo.grabowski at kit.edu>
> Отправлено: 7 сентября 2018 г. 15:36:51
> Кому: openindiana-discuss at openindiana.org
> Тема: Re: [OpenIndiana-discuss] OI Hipster: GDL not working because of
> broken plplot
>
> On 07/09/2018 14:06, Udo Grabowski (IMK) wrote:
> > On 07/09/2018 14:01, Udo Grabowski (IMK) wrote:
> >> On 07/09/2018 13:45, Udo Grabowski (IMK) wrote:
> >>> Says the most important driver for plplot, xwin, is not compiled
> >>> into plplot. I'm convinced it is, otherwise delivering plplot would
> >>> be futile, so it seems that something else is broken here:
> >>>
> >>> ro sunth7 ~ # ldd /usr/bin/gdl|grep plplot
> >>>         libplplot.so.15 =>       /usr/lib/64/libplplot.so.15
> >>>         libplplotcxx.so.13 =>    /usr/lib/64/libplplotcxx.so.13
> >>>
> >>> ro sunth7 ~ # gdl
> >>>
> >>>   GDL - GNU Data Language, Version 0.9.7
> >>>
> >>> - For basic information type HELP,/INFO
> >>> - Default library routine search path used (GDL_PATH/IDL_PATH env.
> var. not
> >>> set):
> >>>   +/usr/share/gnudatalanguage/lib
> >>> - No startup file read (GDL_STARTUP/IDL_STARTUP env. var. not set).
> >>> - Please report bugs, feature or help requests and patches at:
> >>>   http://sourceforge.net/projects/gnudatalanguage/
> >>>
> >>> GDL> plot,findgen(100)
> >>>
> >>> *** PLPLOT WARNING ***
> >>> Unable to open cmap0 file cmap0_default.pal
> >>>
> >>> *** PLPLOT WARNING ***
> >>> Unable to open cmap0 file cmap0_default.pal
> >>>
> >>> *** PLPLOT WARNING ***
> >>> Unable to open cmap1 .pal file cmap1_default.pal
> >>>
> >>> *** PLPLOT ERROR, ABORTING OPERATION ***
> >>> plInitDispatchTable: Could not open drivers directory, aborting
> operation
> >>> % PLplot installation lacks the requested driver: xwin
> >>> % Execution halted at: $MAIN$
> >>> GDL>
> >>>
> >>> ro sunth7 ~ # ll  /usr/share/plplot5.13.0/
> >>> total 581
> >>> -r--r--r--   1 root     bin        55.9K Aug 17 12:04 cglobe.map
> >>> -r--r--r--   1 root     bin          131 Aug 17 12:04
> cmap0_alternate.pal
> >>> -r--r--r--   1 root     bin          195 Aug 17 12:04
> cmap0_black_on_white.pal
> >>> -r--r--r--   1 root     bin          131 Aug 17 12:04 cmap0_default.pal
> >>> -r--r--r--   1 root     bin          195 Aug 17 12:04
> cmap0_white_bg.pal
> >>> -r--r--r--   1 root     bin           51 Aug 17 12:04
> cmap1_blue_red.pal
> >>> -r--r--r--   1 root     bin          220 Aug 17 12:04
> cmap1_blue_yellow.pal
> >>> -r--r--r--   1 root     bin           80 Aug 17 12:04 cmap1_default.pal
> >>> -r--r--r--   1 root     bin           69 Aug 17 12:04 cmap1_gray.pal
> >>> -r--r--r--   1 root     bin           51 Aug 17 12:04
> cmap1_highfreq.pal
> >>> -r--r--r--   1 root     bin          105 Aug 17 12:04 cmap1_lowfreq.pal
> >>> -r--r--r--   1 root     bin          426 Aug 17 12:04 cmap1_radar.pal
> >>> drwxr-xr-x   9 root     sys           23 Aug 17 12:04 examples/
> >>> -r--r--r--   1 root     bin        32.8K Aug 17 12:04 globe.map
> >>> -r--r--r--   1 root     bin        2.30K Aug 17 12:04 pkgIndex.tcl
> >>> -r--r--r--   1 root     bin        6.26K Aug 17 12:04 plstnd5.fnt
> >>> -r--r--r--   1 root     bin        57.4K Aug 17 12:04 plxtnd5.fnt
> >>> drwxr-xr-x   2 root     sys            4 Aug 17 12:04 tcl/
> >>> -r--r--r--   1 root     bin        43.5K Aug 17 12:04 usa.map
> >>> -r--r--r--   1 root     bin        74.9K Aug 17 12:04 usaglobe.map
> >>>
> >>> ro sunth7 ~ # pkg list -a|fgrep -i plplot
> >>> image/plplot    5.13.0-2018.0.0.0          i--
> >>>
> >>>
> >>> ro sunth7 ~ # pkg list -a | fgrep -i gdl
> >>> library/libgdl  3.28.0-2018.0.0.0          i--
> >>> scientific/gdl  0.9.7-2018.0.0.2           i--
> >>>
> >>
> >> Part1 of the problem has an explanation: The code searches for the
> files not
> >> in "/usr/share/plplot...", but in "share/plplot..." (and /usr/local as
> >> last resort) ! This insane:
> >>
> >> 3869:   open("cmap0_default.pal", O_RDONLY)             Err#2 ENOENT
> >> 3869:   open("share/plplot5.13.0/cmap0_default.pal", O_RDONLY) Err#2
> ENOENT
> >> 3869:   open("/usr/local/plplot/lib/cmap0_default.pal", O_RDONLY)
> Err#2 ENOENT
> >>
> >> *** PLPLOT WARNING ***
> >> 3869:   write(2, "\n * * *   P L P L O T  ".., 24)      = 24
> >> Unable to open cmap0 file cmap0_default.pal
> >> 3869:   write(2, " U n a b l e   t o   o p".., 44)      = 44
> >>
> >> 3869:   write(2, "\n", 1)                               = 1
> >> 3869:   open("cmap0_default.pal", O_RDONLY)             Err#2 ENOENT
> >> 3869:   open("share/plplot5.13.0/cmap0_default.pal", O_RDONLY) Err#2
> ENOENT
> >> 3869:   open("/usr/local/plplot/lib/cmap0_default.pal", O_RDONLY)
> Err#2 ENOENT
> >>
> >> *** PLPLOT WARNING ***
> >> 3869:   write(2, "\n * * *   P L P L O T  ".., 24)      = 24
> >> Unable to open cmap0 file cmap0_default.pal
> >> 3869:   write(2, " U n a b l e   t o   o p".., 44)      = 44
> >>
> >> 3869:   write(2, "\n", 1)                               = 1
> >> 3869:   open("cmap1_default.pal", O_RDONLY)             Err#2 ENOENT
> >> 3869:   open("share/plplot5.13.0/cmap1_default.pal", O_RDONLY) Err#2
> ENOENT
> >> 3869:   open("/usr/local/plplot/lib/cmap1_default.pal", O_RDONLY)
> Err#2 ENOENT
> >>
> >> *** PLPLOT WARNING ***
> >> 3869:   write(2, "\n * * *   P L P L O T  ".., 24)      = 24
> >> Unable to open cmap1 .pal file cmap1_default.pal
> >> 3869:   write(2, " U n a b l e   t o   o p".., 49)      = 49
> >>
> >>
> >> linking /usr/share into the working directory lets it find the files,
> >> but still the plplot xwin driver is not found:
> >>
> >> GDL> plot,findgen(100)
> >>
> >> *** PLPLOT ERROR, ABORTING OPERATION ***
> >> plInitDispatchTable: Could not open drivers directory, aborting
> operation
> >> % PLplot installation lacks the requested driver: xwin
> >> % Execution halted at: $MAIN$
> >> GDL>
> >>
> >
> > And so the second part has the same embarassing explanation:
> >
> > 3874:   open("lib/amd64/plplot5.13.0/drivers",
> O_RDONLY|O_NDELAY|O_LARGEFILE)
> > Err#2 ENOENT
> >
> >
> > Also linking /usr/lib/ into the current working finally lets it find its
> driver
> > library, too....
> >
> > Please can somebody recompile plplot with proper fixes to stop this
> madness ?
> >
> >
> >
>
> It seems that, at compile time, some variables were not set correctly
> (aka, empty):
>
> <http://plplot.sourceforge.net/docbook-manual/plplot-
> html-5.13.0/deploying.html>
>
> " In the first case the program will contain all the code it needs to
> work, but
> to run successfully, it needs to find the font files, plstnd5.fnt and
> plxtnd5.fnt. The mechanism used in PLplot to find these files is fairly
> simple:
>
>      It looks at a number of built-in places, determined at the time the
> PLplot
> library itself was installed and built. For deployment these places are
> irrelevant in general.
>
>      It looks at the environment variables PLPLOT_LIB and PLPLOT_HOME.
> vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
> (Actually, this happens only, if the corresponding compiler macros
> PLPLOT_LIB_ENV and PLPLOT_HOME_ENV were defined at compile time.)  "
>   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
>
> The compile time variables were set, because plplot reacts to PLPLOT_LIB.
> But the default directories were not set.
>
> Actually, setting the runtime variables to the default directories helps
> as a first workaround:
>
> setenv PLPLOT_LIB /usr/share/plplot5.13.0
> setenv PLPLOT_DRV_DIR /usr/lib/amd64/plplot5.13.0/drivers
>
> and GDL (and probably other programs linked to plplot) can finally plot !
>
> --
> Dr.Udo Grabowski   Inst.f.Meteorology & Climate Research IMK-ASF-SAT
> http://www.imk-asf.kit.edu/english/sat.php
> KIT - Karlsruhe Institute of Technology           http://www.kit.edu
> Postfach 3640,76021 Karlsruhe,Germany T:(+49)721 608-26026 F:-926026
>
> _______________________________________________
> openindiana-discuss mailing list
> openindiana-discuss at openindiana.org
> https://openindiana.org/mailman/listinfo/openindiana-discuss
>



-- 
---
Praise the Caffeine embeddings


More information about the openindiana-discuss mailing list