Sorry for the delay!! [I was putting off coming back to this as I find git 
intimidating…]

OK Rob.  I’ve made a change in my branch better-gfortran-linking so it does’t 
do the library validation for gnu compilers.

However I have left it in for the others - I am pretty sure their was 
originally a good reason for this I just can’t remember what it was!!!

Can you test?

Karl


> On 16 Nov 2015, at 6:57 pm, sisyph...@optusnet.com.au wrote:
> 
> 
> 
> -----Original Message----- From: sisyph...@optusnet.com.au
> 
>> Is it possible to just specify *all* of the possible libraries that might be 
>> needed, skip the validation, and leave it to EU::MM to automatically remove 
>> the ones that don't exist ?
> 
> Didn't really give a very good account of this - crap post. Sorry, I'll try 
> to elaborate.
> 
> On Windows, we're relying on this code in F77.pm:
> 
> $F77config{MinGW}{GFortran}{Link} = sub {
>   # do stuff
>   return( "-L$dir -L/usr/lib -lgfortran -lquadmath -lm" );
> };
> 
> Now, I can change the return to:
> 
>   return( "-L$dir -L/usr/lib -lgfortran -lquadmath -lm -lrubbish" );
> 
> where "-lrubbish" is a non-existent and unlocatable  library.
> 
> Having made that change, it makes no difference to the usability of 
> ExtUtils-F77. It still builds, tests and installs fine:
> 
> ##########################################
> C:\sisyphusion\ExtUtils-F77>perl -Mblib t/require.t
> 1..2
> 
> ExtUtils::F77: Version 1.19
> Loaded ExtUtils::F77 version 1.19
> Found compiler gfortran.exe
> ExtUtils::F77: Using system=MSWin32 compiler=<undefined>
> ExtUtils::F77: Unable to guess and/or validate system/compiler configuration
> ExtUtils::F77: Will try system=Generic Compiler=GFortran
> ExtUtils::F77: Validating -Lc:/mingw/bin/../lib/gcc/mingw32/4.7.0 -L/usr/lib 
> -lg
> fortran -lquadmath -lm -lrubbish
> ExtUtils::F77:    Unable to find library -lrubbish
> ExtUtils::F77: Well that didn't appear to validate. Well I will try it anyway.
> ExtUtils::F77: Compiler: gfortran
> ExtUtils::F77: Cflags: -O
> ok 1
> ok 2
> 
> ##########################################
> 
> When it comes to building PDL using this EU-F77 installation, Slatec and 
> Minuit still build fine.
> 
> Firstly, during the 'Makefile.PL' step I find:
> 
> ##########################################
> Writing Makefile for PDL::CallExt
> 
> ExtUtils::F77: Version 1.19
> Loaded ExtUtils::F77 version 1.19
> Found compiler gfortran.exe
> ExtUtils::F77: Using system=MSWin32 compiler=<undefined>
> ExtUtils::F77: Unable to guess and/or validate system/compiler configuration
> ExtUtils::F77: Will try system=Generic Compiler=GFortran
> ExtUtils::F77: Validating -Lc:/mingw/bin/../lib/gcc/mingw32/4.7.0 -L/usr/lib 
> -lg
> fortran -lquadmath -lm -lrubbish
> ExtUtils::F77:    Unable to find library -lrubbish
> ExtUtils::F77: Well that didn't appear to validate. Well I will try it anyway.
> ExtUtils::F77: Compiler: gfortran
> ExtUtils::F77: Cflags: -O
> (ExtUtils Version 1.19)
> Compiling the test Fortran program...
> Executing the test program...
> Congratulations you seem to have a working f77!
> 
>  Building PDL::Slatec. Turn off WITH_SLATEC if there are any problems
> 
> Warning (mostly harmless): No library found for -lrubbish
> Generating a dmake-style Makefile
> Writing Makefile for PDL::Slatec
> ##########################################
> 
> And further on:
> 
> ##########################################
> Writing Makefile for PDL::Transform
> ExtUtils::F77: Using system=MSWin32 compiler=<undefined>
> ExtUtils::F77: Unable to guess and/or validate system/compiler configuration
> ExtUtils::F77: Will try system=Generic Compiler=GFortran
> ExtUtils::F77: Validating -Lc:/mingw/bin/../lib/gcc/mingw32/4.7.0 -L/usr/lib 
> -lg
> fortran -lquadmath -lm -lrubbish
> ExtUtils::F77:    Unable to find library -lrubbish
> ExtUtils::F77: Well that didn't appear to validate. Well I will try it anyway.
> ExtUtils::F77: Compiler: gfortran
> ExtUtils::F77: Cflags: -O
> (ExtUtils Version 1.19)
> Compiling the test Fortran program...
> Executing the test program...
> Congratulations you seem to have a working f77!
> Building PDL::Minuit. Turn off WITH_MINUIT if there are any problems
> Stand alone Minuit library will be built...
> Warning (mostly harmless): No library found for -lrubbish
> Generating a dmake-style Makefile
> Writing Makefile for PDL::Minuit
> ##########################################
> 
> As you can see, EU-MM removes the link to the unfound librubbish library on 
> both occasions, thus avoiding what would otherwise be fatal errors.
> 
> And then PDL-2.014_01 builds and tests fine (including slatec and minuit).
> 
> So ... are you sure that linking to non-existent libraries is really an issue 
> ?
> The removal of links to unlocatable libraries is a design feature of EU-MM, 
> and works on all systems afaik.
> 
> Cheers,
> Rob
> 
> 
> 


------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel

Reply via email to