develooper Front page | perl.perl5.porters | Postings from June 2013

RE: dmake can't find config.h, and collector throws error when trying to compile perl-static.exe (perl-5.18.0 / mingw / 32b)

Thread Previous | Thread Next
From:
Steve Hay
Date:
June 3, 2013 07:59
Subject:
RE: dmake can't find config.h, and collector throws error when trying to compile perl-static.exe (perl-5.18.0 / mingw / 32b)
Message ID:
67B2BB40A61BE846B65EF4793B863D6CB5C2E5@ukmail02.planit.group
On 02 June 2013 14:05, Leon Timmermans <fawaka@gmail.com>wrote:
>On Jun 2, 2013 2:16 PM, <sisyphus1@optusnet.com.au> wrote:
>> It's a bit odd. I see in the build process:
>>
>> ar rc  ..\libperl518s.a \
>>        ..\lib\auto\B\B.a ..\lib\auto\Compress\Raw\Bzip2\Bzip2.a ..\lib\auto\Compress\Raw\Zlib\Zlib.a ..\lib\auto\Cwd\Cwd.a ..\lib\auto\Data\Dumper\Dumper.a ..\lib\auto\Devel\PPPort\PPPort.a ..\lib\auto\Devel\Peek\Peek.a ..\lib\auto\Digest\MD5\MD5.a ..\lib\auto\Digest\SHA\SHA.a ..\lib\auto\Fcntl\Fcntl.a ..\lib\auto\File\DosGlob\DosGlob.a ..\lib\auto\File\Glob\Glob.a ..\lib\auto\Filter\Util\Call\Call.a ..\lib\auto\Hash\Util\Util.a ..\lib\auto\Hash\Util\FieldHash\FieldHash.a ..\lib\auto\IO\IO.a ..\lib\auto\List\Util\Util.a ..\lib\auto\MIME\Base64\Base64.a ..\lib\auto\Math\BigInt\FastCalc\FastCalc.a ..\lib\auto\Opcode\Opcode.a ..\lib\auto\POSIX\POSIX.a ..\lib\auto\PerlIO\encoding\encoding.a ..\lib\auto\PerlIO\mmap\mmap.a ..\lib\auto\PerlIO\scalar\scalar.a ..\lib\auto\PerlIO\via\via.a ..\lib\auto\Socket\Socket.a ..\lib\auto\Storable\Storable.a ..\lib\auto\Sys\Hostname\Hostname.a ..\lib\auto\Text\Soundex\Soundex.a ..\lib\auto\Tie\Hash\NamedCapture\NamedCapture.a ..\lib\auto\Time\HiRes\HiRes.a ..\lib\auto\Time\Piece\Piece.a ..\lib\auto\Unicode\Collate\Collate.a ..\lib\auto\Unicode\Normalize\Normalize.a ..\lib\auto\Win32API\File\File.a ..\lib\auto\Win32CORE\Win32CORE.a ..\lib\auto\XS\APItest\APItest.a ..\lib\auto\XS\Typemap\Typemap.a ..\lib\auto\arybase\arybase.a ..\lib\auto\attributes\attributes.a ..\lib\auto\mro\mro.a ..\lib\auto\re\re.a ..\lib\auto\threads\threads.a ..\lib\auto\threads\shared\shared.a  \
>>
>> This would suggest that those missing boot symbols should *not* be missing (as they're to be found in those various .a files specified in the above command).
>>
>> However, if I do an 'objdump -t' on the libperl518s.a that was built, I get:
>>
>> C:\_32>objdump -t C:/comp/perl-5.18.0/libperl518s.a >libperl518s.dump
>> objdump: B.a: File format not recognized
>> objdump: Bzip2.a: File format not recognized
>> objdump: Zlib.a: File format not recognized
[...]
>> That must surely be part of the problem ? I wonder why those file formats would be unrecognized.
>>
>> (Btw, this was with a 32-bit build using a mingw.org port of gcc-4.7.0.)
> It seems that creates an archive of archives, instead of an archive of object files.
> Leon

Yes, reading the docs for GNU ar I see that it does indeed, and it looks like there is no other way to do this than to extract the object files from each extension's archive and then archive all the extracted object files into the perl static library. I will look at doing this soon unless anyone would like to do it sooner.

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About