Skip Menu |

This queue is for tickets about the PDL-Graphics-PLplot CPAN distribution.

Report information
The Basics
Id: 105024
Status: open
Priority: 0/
Queue: PDL-Graphics-PLplot

People
Owner: Nobody in particular
Requestors: kmx [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Improved plplot lib detection (compatibile with strawberry perl PDL edition)
Hi,

please consider applying the enclosed patch that improves plplot library detection using directories specified by $Config{libpth} and $Config{usrinc}

It also fixes a typo: "lib{$libbasename}.a" vs. "lib${libbasename}.a"

--
kmx

Subject: PDL-Graphics-PLplot-0.71_patched.diff
diff -ru PDL-Graphics-PLplot-0.71/Makefile.PL PDL-Graphics-PLplot-0.71_patched/Makefile.PL --- PDL-Graphics-PLplot-0.71/Makefile.PL 2015-05-15 22:57:03.000000000 +0200 +++ PDL-Graphics-PLplot-0.71_patched/Makefile.PL 2015-06-06 21:07:26.719381900 +0200 @@ -53,12 +53,13 @@ # $libbasename = $_; $libname = "lib${libbasename}." . $Config{"so"}; - my $libname_static = "lib{$libbasename}.a"; - print "Searching for ${libname} library.\n"; + my $libname_static = "lib${libbasename}.a"; + print "Searching for ${libname}/${libname_static} library.\n"; foreach my $libdir ( $ENV{PLPLOT_LIBDIR}, $PDL::Config{WHERE_PLPLOT_LIBS}, + split(/ /, $Config{libpth}), '/usr/local/plplot/lib64', '/usr/local/plplot/lib', '/usr/local/lib64', @@ -73,6 +74,7 @@ # Add new library paths here!! ) { + next unless $libdir; if (-e "$libdir/$libname") { $plplot_lib_path = $libdir; $ENV{LD_LIBRARY_PATH} .= ":$libdir"; @@ -103,6 +105,8 @@ foreach my $incdir ( $ENV{PLPLOT_INCDIR}, $PDL::Config{WHERE_PLPLOT_INCLUDE}, + $Config{usrinc}, + $Config{usrinc}.'/plplot', '/usr/local/plplot/include', '/usr/local/plplot/include/plplot', '/usr/local/include/plplot',
see improved patch PDL-Graphics-PLplot-0.71_patched3.diff which handles cygwin where the library file is libplplotd.dll.a

Subject: PDL-Graphics-PLplot-0.71_patched3.diff
diff -ru PDL-Graphics-PLplot-0.71/Makefile.PL PDL-Graphics-PLplot-0.71_patched3/Makefile.PL --- PDL-Graphics-PLplot-0.71/Makefile.PL 2015-05-15 22:57:03.000000000 +0200 +++ PDL-Graphics-PLplot-0.71_patched3/Makefile.PL 2015-06-08 11:44:05.262739900 +0200 @@ -53,12 +53,12 @@ # $libbasename = $_; $libname = "lib${libbasename}." . $Config{"so"}; - my $libname_static = "lib{$libbasename}.a"; - print "Searching for ${libname} library.\n"; + print "Searching for ${libname}/lib${libbasename}.a library.\n"; foreach my $libdir ( $ENV{PLPLOT_LIBDIR}, $PDL::Config{WHERE_PLPLOT_LIBS}, + split(/ /, $Config{libpth}), '/usr/local/plplot/lib64', '/usr/local/plplot/lib', '/usr/local/lib64', @@ -73,14 +73,20 @@ # Add new library paths here!! ) { + next unless $libdir; if (-e "$libdir/$libname") { $plplot_lib_path = $libdir; $ENV{LD_LIBRARY_PATH} .= ":$libdir"; last; - } elsif (-e "$libdir/$libname_static") { + } elsif (-e "$libdir/lib${libbasename}.a") { $plplot_lib_path = $libdir; $ENV{LD_LIBRARY_PATH} .= ":$libdir"; - $libname = $libname_static; + $libname = "lib${libbasename}.a"; + last; + } elsif (-e "$libdir/lib${libbasename}.dll.a") { + $plplot_lib_path = $libdir; + $ENV{LD_LIBRARY_PATH} .= ":$libdir"; + $libname = "lib${libbasename}.dll.a"; last; } @@ -103,6 +109,8 @@ foreach my $incdir ( $ENV{PLPLOT_INCDIR}, $PDL::Config{WHERE_PLPLOT_INCLUDE}, + $Config{usrinc}, + $Config{usrinc}.'/plplot', '/usr/local/plplot/include', '/usr/local/plplot/include/plplot', '/usr/local/include/plplot',
You might be better off emailing Doug directly. You might further ask him to consider bringing his repo under the github PDLPorters organisation.