http://www.perlmonks.org?node_id=1014111


in reply to Re^3: MakeMaker and Library filename extensions ( :nosearch )
in thread MakeMaker and Library filename extensions

Very few succeed at improving Makefile.PL, and those that do don't ask questions like this

Why would one NOT want to improve their Makefile.PL ... That would be utterly ignorant!

Now if you meant improve MakeMaker et al ... I agree!

Upgrade ExtUtils::Liblist = 6.63_02 with Perl 5.16

It has always accepted those

It has, The following log bits would beg to differ ...
Shared build ...

Potential libraries are '-L/usr/local/lib -lMyLib -liconv': '-lMyLib' found at /usr/local/lib/libMyLib.so '-liconv' found at /usr/local/lib/libiconv.so.7

Shared build, fully qualified filename, using -l ...

Potential libraries are '-L/usr/local/lib -l/usr/local/lib/libMyLib.so + -liconv': /usr/local/lib/libMyLib.so not found in /usr/local/lib /usr/local/lib/libMyLib.so not found in /usr/lib /usr/local/lib/libMyLib.so not found in /usr/local/lib Note (probably harmless): No library found for -l/usr/local/lib/libMyL +ib.so '-liconv' found at /usr/local/lib/libiconv.so.7

Shared build, full path and filename w/o extension, using -l ...

Potential libraries are '-L/usr/local/lib -l/usr/local/lib/libMyLib -l +iconv': /usr/local/lib/libMyLib not found in /usr/local/lib /usr/local/lib/libMyLib not found in /usr/lib /usr/local/lib/libMyLib not found in /usr/local/lib Note (probably harmless): No library found for -l/usr/local/lib/libMyL +ib '-liconv' found at /usr/local/lib/libiconv.so.7

Shared build, fully qualified filename, without using -l ...
A valid Make tool chain argument ...

Potential libraries are '-L/usr/local/lib /usr/local/lib/libMyLib.so - +liconv': Unrecognized argument in LIBS ignored: '/usr/local/lib/libMyLib.so' '-liconv' found at /usr/local/lib/libiconv.so.7

Shared build, full path and filename w/o extension, without using -l ...

Potential libraries are '-L/usr/local/lib /usr/local/lib/libMyLib -lic +onv': Unrecognized argument in LIBS ignored: '/usr/local/lib/libMyLib' '-liconv' found at /usr/local/lib/libiconv.so.7

Shared build with full path, HACKED filename using -l ...

Potential libraries are '-L/usr/local/lib -l/usr/local/lib/MyLib.so -l +iconv': /usr/local/lib/MyLib.so not found in /usr/local/lib /usr/local/lib/MyLib.so not found in /usr/lib /usr/local/lib/MyLib.so not found in /usr/local/lib Note (probably harmless): No library found for -l/usr/local/lib/MyLib. +so '-liconv' found at /usr/local/lib/libiconv.so.7

Shared build with full path, HACKED filename w/o extension using -l ...

Potential libraries are '-L/usr/local/lib -l/usr/local/lib/MyLib -lico +nv': /usr/local/lib/MyLib not found in /usr/local/lib /usr/local/lib/MyLib not found in /usr/lib /usr/local/lib/MyLib not found in /usr/local/lib Note (probably harmless): No library found for -l/usr/local/lib/MyLib '-liconv' found at /usr/local/lib/libiconv.so.7

Static build with both the .a and .so in /usr/local/lib ...
Should have picked up the .a ...

Potential libraries are '-L/usr/local/lib -lMyLib -lz -liconv': '-lMyLib' found at /usr/local/lib/libMyLib.so z not found in /usr/local/lib '-lz' found at /usr/lib/libz.so '-liconv' found at /usr/local/lib/libiconv.so.7

Static build with /usr/local/lib/libMyLib.so removed ...

Potential libraries are '-L/usr/local/lib -lMyLib -lz -liconv': '-lMyLib' found at /usr/local/lib/libMyLib.a z not found in /usr/local/lib '-lz' found at /usr/lib/libz.so '-liconv' found at /usr/local/lib/libiconv.so.7

Think I got all logical and a couple illogical permutations covered ...

-Enjoy

Replies are listed 'Best First'.
Re^5: MakeMaker and Library filename extensions ( :nosearch )
by Anonymous Monk on Jan 19, 2013 at 08:17 UTC

    Why would one NOT want to improve their Makefile.PL ... That would be utterly ignorant!

    Well, over the last decade i've seen hundreds try to improve their Makefile.PL, all they do is break INC=/LIBS=/postamble, and require my manual intervention beyond specifying INC/LIBS

    Sure things have gotten lots better since the advent strawberryperl came along, but its hard job , there are way too many platform/compiler combinations, bugs are easy to make

    Take a look inside Alien::, inside Alien::SDL, Alien::wxWidgets, XML::LibXML, and check the bug cue -- reinventing sh configure is hard work, everyone does it differently, there is a lot to be said for KISS

    It has, The following log bits would beg to differ ... Think I got all logical and a couple illogical permutations covered ...

    Nope, read Re^5: h2xs on Windows, it has always accepted them, before :nosearch liblist would leave them alone, but since :nosearch it doesn't leave them alone unless you use :nosearch

      Well, over the last decade i've seen hundreds try to improve their Makefile.PL, all they do is break INC=/LIBS=/postamble, and require my manual intervention beyond specifying INC/LIBS

      Sounds like a personal problem ...

      there are way too many platform/compiler combinations, bugs are easy to make

      Agreed, And that is exactly why a Dumb MakeMaker is a Smart MakeMaker!

      Take a look inside Alien::, inside Alien::SDL, Alien::wxWidgets, XML::LibXML, and check the bug cue -- reinventing sh configure is hard work

      Sorry, But I could really care less about others workload, I have my own to worry about.

      there is a lot to be said for KISS

      Love their music ... However, Keeping It Stupid Simple is my point, it's not, it's trying to be smart and failing!

      Nope, read Re^5: h2xs on Windows, it has always accepted them, before :nosearch liblist would leave them alone, but since :nosearch it doesn't leave them alone unless you use :nosearch

      The code in Kid.pm::_unix_os2_ext says you are wrong ...
      I'm not on Windows so I could care less how it functions on Windows.

      -Enjoy

        ... Agreed, And that is exactly why a Dumb MakeMaker is a Smart MakeMaker! ... so I could care less ...

        me too