StormSurgeLive / asgs

The Automated Solution Generation System (ASGS) provides software infrastructure for automating coastal ocean modelling for real time decision support, and provides a variety of standalone command line tools for pre- and post-processing. Visit us at https://discord.gg/jFbacxrUf9
https://tools.adcirc.live
GNU General Public License v3.0
39 stars 22 forks source link

install GD perl module for use with ourPerl stations_to_kml.pl #477

Closed jasonfleming closed 3 years ago

jasonfleming commented 3 years ago

The ourPerl scripts have interesting use cases, and the AdcircUtils/stations_to_kml.pl and AdcircUtils/stations_check.pl scripts are very valuable for checking station locations. The GD perl module is required for use with AdcircUtils/stations_to_kml.pl so I am looking in to what is needed to get it going.

jasonfleming commented 3 years ago

The bulding of the GD perl module failed inside Dockerfile.dev container due to dependency issues:

--> Working on GD
Fetching http://www.cpan.org/authors/id/R/RU/RURBAN/GD-2.73.tar.gz ... OK
==> Found dependencies: ExtUtils::PkgConfig
--> Working on ExtUtils::PkgConfig
Fetching http://www.cpan.org/authors/id/X/XA/XAOC/ExtUtils-PkgConfig-1.16.tar.gz ... OK
Configuring ExtUtils-PkgConfig-1.16 ... N/A
! Configure failed for ExtUtils-PkgConfig-1.16. See /work/opt/default/perl5/.cpanm/work/1620236776.15987/build.log for details.
! Installing the dependencies failed: Module 'ExtUtils::PkgConfig' is not installed
! Bailing out the installation for GD-2.73.
command for "Step for installing, adding, and updating required Perl modules" exited with an error code of 1, stopping. Please fix and rerun.

From the end of /work/opt/default/perl5/.cpanm/work/1620236776.15987/build.log:

Entering GD-2.73
Checking configure dependencies from META.json
Checking if you have ExtUtils::Constant 0.22 ... Yes (0.25)
Checking if you have ExtUtils::PkgConfig 0 ... No
==> Found dependencies: ExtUtils::PkgConfig
Searching ExtUtils::PkgConfig (0) on cpanmetadb ...
--> Working on ExtUtils::PkgConfig
Fetching http://www.cpan.org/authors/id/X/XA/XAOC/ExtUtils-PkgConfig-1.16.tar.gz
-> OK
Unpacking ExtUtils-PkgConfig-1.16.tar.gz
Entering ExtUtils-PkgConfig-1.16
Checking configure dependencies from META.json
Checking if you have ExtUtils::MakeMaker 6.58 ... Yes (7.44)
Configuring ExtUtils-PkgConfig-1.16
Running Makefile.PL
***
*** ExtUtils::PkgConfig requires the pkg-config utility, but it doesn't
*** seem to be in your PATH.  Is it correctly installed?
***  PATH=/work/opt/default/perl5/bin:/work/opt/default/perl5/perls/perl-5.32.0/bin:/work/opt/default/gfortran/bin:/work/opt/default/bin:/work/asgs/cloud/general:/work/asgs/bin:/work/asgs/my-bin:/work/asgs/cloud/general:/work/asgs/config:/work/asgs/config/tests:/work/asgs/input:/work/asgs/input/data_assimilation:/work/asgs/monitoring:/work/asgs/output:/work/asgs/output/cera_contour:/work/asgs/output/cpra_postproc:/work/asgs/output/cpra_postproc/MEX:/work/asgs/output/cpra_postproc/old/tools:/work/asgs/output/Cuba_post:/work/asgs/output/FG49:/work/asgs/output/NGOM_post:/work/asgs/output/PartTrack:/work/asgs/output/postProcessFlux:/work/asgs/output/POSTPROC_KMZGIS:/work/asgs/output/POSTPROC_KMZGIS/FigGen:/work/asgs/output/POSTPROC_KMZGIS/RenciGETools-10/src:/work/asgs/output/test:/work/asgs/output/TRACKING_FILES:/work/asgs/output/validation:/work/asgs/tides:/work/asgs/util:/work/asgs/util/admin:/work/asgs/util/input:/work/asgs/util/input/mesh:/work/asgs/util/input/nodalattr:/work/asgs/util/output:/work/asgs/util/troubleshooting:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/home/asgsuser/bin:/home/asgsuser/bin
***
-> N/A
-> FAIL Configure failed for ExtUtils-PkgConfig-1.16. See /work/opt/default/perl5/.cpanm/work/1620236776.15987/build.log for details.
-> FAIL Installing the dependencies failed: Module 'ExtUtils::PkgConfig' is not installed
-> FAIL Bailing out the installation for GD-2.73.                                                                                                                                                           

I will see if I can fix this by adding pkg-config to the docker image.

jasonfleming commented 3 years ago

Ok we got past the pkg-config but now it is failing due to lack of libgd. From /work/opt/default/perl5/.cpanm/work/1620237618.129/build.log:

Configuring GD-2.73
Running Makefile.PL
Notice: Type perl Makefile.PL -h for command-line option summary.

Package gdlib was not found in the pkg-config search path.
Perhaps you should add the directory containing `gdlib.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gdlib' found
 at Makefile.PL line 451.
*** can not find package gdlib
*** check that it is properly installed and available in PKG_CONFIG_PATH
 at Makefile.PL line 451.
-> N/A
-> FAIL Configure failed for GD-2.73. See /work/opt/default/perl5/.cpanm/work/1620237618.129/build.log for details.
1 distribution installed

I will see if I can fix this by adding libgd to the docker image.