in reply to Re^4: Problems building Perl
in thread Problems building Perl

There were also many undefined references reported prior to the error being reported.

Ok .. looks as though there might be a problem with your MinGW installation. Can you give us a copy'n'paste of some of those "undefined reference" messages - you should have got no such messages at all.

Also, how did you install MinGW ?

Cheers,
Rob

Replies are listed 'Best First'.
Re^6: Problems building Perl
by mhartman (Novice) on Mar 08, 2010 at 13:53 UTC

    I installed MingW by running the MinGW-5.1.6.exe install shield, that installed MingW onto my machine in the 'C:\MingW' folder.

    I have included a printout of the error that I received:

    C:\DOCUME~1\za100014\LOCALS~1\Temp\mk11 perllib.o:perllib.c:(.text+0x3e4a): undefined reference to `_Unwind_Resume' perllib.o:perllib.c:(.text+0x3f0c): undefined reference to `_Unwind_Resume' perllib.o:perllib.c:(.text+0x40b4): undefined reference to `_Unwind_Resume' perllib.o:perllib.c:(.text+0x42ca): undefined reference to `_Unwind_Resume' perllib.o:perllib.c:(.text+0x45ec): undefined reference to `_Unwind_Resume' perllib.o:perllib.c:(.text+0x46e2): more undefined references to `_Unwind_Resume ' follow perllib.o:perllib.c:(.eh_frame+0x12): undefined reference to `__gxx_personality_ v0' collect2: ld returned 1 exit status dmake: Error code 129, while making '..\perl510.dll'

    Regards Morne

      I installed MingW by running the MinGW-5.1.6.exe install shield

      Does that install g++ ? (Running g++ -dumpversion will tell you. If it produces a 'g++' is not recognized as an internal or external command ... warning then you *don't* have it. Alternatively, see if C:/MinGW/bin/g++.exe exists.)

      If you don't have the g++ package, you can grab the current gcc-g++-a.b.c-xxxxxxxx.tar.gz. The 'a.b.c' needs to be the same as reported by gcc -dumpversion
      I'm not sure what 'xxxxxxxx' will be (except that it will be numerical characters), but any value should do. I tried finding a link here but, as usual, that page doesn't display properly for me. Just unpack that tar.gz file to C:\MinGW. Once the unpacking has completed check that g++.exe is in C:/MinGW/bin.

      I have no idea what _Unwind_Resume is - can't find it anywhere on Google, in MinGW, or in Perl. And the __gxx_personality_ v0 symbol that you've reported is just bizarre. I've never seen a symbol with a space in it before. Maybe that should be __gxx_personality_v0 - but, even so, whilst my libstdc++ resolves __gxx_personality_sj0 there's no mention of __gxx_personality_v0. Maybe that's just different versions of gcc.

      Anyway, I don't want to speculate further until I know that you've got g++ installed. If you don't already have it, after installing it run dmake distclean to clean up the previous build, followed by dmake -f makefile.mk again.

      Cheers,
      Rob
        I have no idea what _Unwind_Resume is

        Seems to belong to the gcc_s library:

        $ objdump -T /lib/libgcc_s.so.1 | grep _Unwind_Resume 0000000000009080 g DF .text 00000000000000ff GCC_3.3 _Unwin +d_Resume_or_Rethrow 0000000000008cd0 g DF .text 00000000000000f5 GCC_3.0 _Unwin +d_Resume