Opened 6 years ago

Closed 6 years ago

#43523 closed update (fixed)

plplot @5.9.9: update to 5.10.0

Reported by: cartasegna.luca@… Owned by: tenomoto (Takeshi Enomoto)
Priority: Normal Milestone:
Component: ports Version: 2.2.1
Keywords: Cc: lpsinger (Leo Singer)
Port: plplot

Description

Please update plplot to the latest version. I tried the current Portfile with the version changed and the checksums updated and the variants +gcc48 +aquaterm +x11 +qt4 seems to build/work fine in my limited testing: the variant +wxwidgets is broken though(no idea on the other variants). I' m attaching the main.log of the failed build.

Attachments (1)

main.log (399.3 KB) - added by cartasegna.luca@… 6 years ago.
Log of failed build(+wxwidgets variant)

Download all attachments as: .zip

Change History (13)

Changed 6 years ago by cartasegna.luca@…

Attachment: main.log added

Log of failed build(+wxwidgets variant)

comment:1 Changed 6 years ago by mf2k (Frank Schima)

Cc: takeshi@… removed
Owner: changed from macports-tickets@… to takeshi@…

comment:2 Changed 6 years ago by tenomoto (Takeshi Enomoto)

Resolution: fixed
Status: newclosed

Sorry for slow response. Done in r120816. wxwidgets variants should compile w/o problems.

comment:3 Changed 6 years ago by gnw3

After upgrading plplot on Snow Leopard, gnudatalanguage must be rebuilt, but the build fails because include/plot/plConfig.h references a non-existent file plplot_config.h. The comments in plConfig.h indicate that plplot_config.h should not be installed, so it appears the test:

#ifdef HAVE_CONFIG_H
#  include <plplot_config.h>
#endif

in plConfig.h should be adjusted. This issue has been discussed at https://bugs.gentoo.org/show_bug.cgi?id=498234.

A workaround is to change the test, e.g.:

#ifdef HAVE_PLPLOT_CONFIG_H
#  include <plplot_config.h>
#endif

This change gets past the missing include file.

bonus content for those who just want to get gnudatalanguage working

After the include problem has been resolved, gnudatalanguage still fails to build due to:

.../plotting_contour.cpp:814:37: error: 'class GDLGStream' has no member named 'wid'

To use plplot >= 5.9.10, copy the following block (from http://gnudatalanguage.cvs.sourceforge.net/viewvc/gnudatalanguage/gdl/src/gdlgstream.hpp?view=markup):

178     // uncomment for plplot >= 5.9.10
179 	// void wid( PLINT w) { this->width( w);}

and remove the // from the second line.

comment:4 in reply to:  3 Changed 6 years ago by lpsinger (Leo Singer)

Resolution: fixed
Status: closedreopened

Replying to gnwiii@…:

After upgrading plplot on Snow Leopard, gnudatalanguage must be rebuilt, but the build fails because include/plot/plConfig.h references a non-existent file plplot_config.h. The comments in plConfig.h indicate that plplot_config.h should not be installed, so it appears the test:

#ifdef HAVE_CONFIG_H
#  include <plplot_config.h>
#endif

in plConfig.h should be adjusted. This issue has been discussed at https://bugs.gentoo.org/show_bug.cgi?id=498234.

A workaround is to change the test, e.g.:

#ifdef HAVE_PLPLOT_CONFIG_H
#  include <plplot_config.h>
#endif

This change gets past the missing include file.

After this update, the scamp port fails to build because of this macro conflict. It has already been fixed in plplot trunk. See the plplot bug report at http://sourceforge.net/p/plplot/bugs/146/.

The latest code on plplot trunk (http://sourceforge.net/p/plplot/code/HEAD/tree/trunk/include/plConfig.h.in) looks like this:

#ifdef PLPLOT_HAVE_CONFIG_H
#  include <plplot_config.h>
#endif

Could you please patch the plplot port to fix this?

comment:5 Changed 6 years ago by lpsinger (Leo Singer)

Cc: aronnax@… added

Cc Me!

comment:6 Changed 6 years ago by tenomoto (Takeshi Enomoto)

Is the macro PLPLOT_HAVE_CONFIG defined? I can't build plplot even with -DPLPLOT_HAVE_CONFIG=ON.

comment:7 in reply to:  6 ; Changed 6 years ago by lpsinger (Leo Singer)

Replying to takeshi@…:

Is the macro PLPLOT_HAVE_CONFIG defined? I can't build plplot even with -DPLPLOT_HAVE_CONFIG=ON.

The text PLPLOT_HAVE_CONFIG appears nowhere in the source archive plplot-5.10.0.tar.gz. What is -DPLPLOT_HAVE_CONFIG=ON supposed to do?

comment:8 in reply to:  2 ; Changed 6 years ago by cartasegna.luca@…

Replying to takeshi@…:

Sorry for slow response. Done in r120816. wxwidgets variants should compile w/o problems.

Thanks! Unfortunately the wxwidgets variant still does' t compile(at least for me). Trying the new Portfile the compilation fails while building the wxwidgets bindings' because it doesn' t find the plplot library. Changing the line from

-Dwxwidgets_LINK_FLAGS=-lplplot

to(giving the full path)

-Dwxwidgets_LINK_FLAGS=${workpath}/build/src/libplplotd.12.dylib

makes the compilation successful but then in the activate phase I get this error message:

Could not open /opt/local/var/macports/build/_opt_macports_ports_science_plplot/plplot/work/build/src/libplplotd.12.dylib: Error opening or reading file (referenced from /opt/local/lib/libplplotwxwidgetsd.0.0.0.dylib)

comment:9 in reply to:  8 ; Changed 6 years ago by lpsinger (Leo Singer)

Replying to cartasegna.luca@…:

Replying to takeshi@…:

Sorry for slow response. Done in r120816. wxwidgets variants should compile w/o problems.

Thanks! Unfortunately the wxwidgets variant still does' t compile(at least for me). Trying the new Portfile the compilation fails while building the wxwidgets bindings' because it doesn' t find the plplot library. Changing the line from

-Dwxwidgets_LINK_FLAGS=-lplplot

to(giving the full path)

-Dwxwidgets_LINK_FLAGS=${workpath}/build/src/libplplotd.12.dylib

makes the compilation successful but then in the activate phase I get this error message:

Could not open /opt/local/var/macports/build/_opt_macports_ports_science_plplot/plplot/work/build/src/libplplotd.12.dylib: Error opening or reading file (referenced from /opt/local/lib/libplplotwxwidgetsd.0.0.0.dylib)

You probably want -lplplotd, not -lplplot.

comment:10 in reply to:  7 Changed 6 years ago by tenomoto (Takeshi Enomoto)

Replying to aronnax@…:

Replying to takeshi@…:

Is the macro PLPLOT_HAVE_CONFIG defined? I can't build plplot even with -DPLPLOT_HAVE_CONFIG=ON.

The text PLPLOT_HAVE_CONFIG appears nowhere in the source archive plplot-5.10.0.tar.gz. What is -DPLPLOT_HAVE_CONFIG=ON supposed to do?

The header plplot_config.h is required at the compile time. When HAVE_CONFIG is replaced with undefined PLPLOT_HAVE_CONFIG, a lot of errors occur due to the lack of plplot_config.h. I tried to define PLOT_HAVE_CONFIG with -DPLOT_HAVE_CONFIG=ON, which didn't work.

comment:11 in reply to:  9 Changed 6 years ago by tenomoto (Takeshi Enomoto)

Are you editing your own copy? I used -lplplotd in r120816. Note that ${workpath} is a temporary directory for compilation.

comment:12 Changed 6 years ago by tenomoto (Takeshi Enomoto)

Resolution: fixed
Status: reopenedclosed

Realized that CMakeLists.txt should be edited to allow PLPLOT_HAVE_CONFIG_H as have been done in http://sourceforge.net/p/plplot/code/13096/. Committed changes in r120891 and r120892. I'll fix gnudatalanguage in #43985.

BTW, is anyone interested in taking over the maintainership of plplot or gnudatalanguage?

Note: See TracTickets for help on using tickets.