in reply to Re^6: Win32::GUI Installation Errors
in thread Win32::GUI Installation Errors

I followed your steps to the point and they all returned the expected values except the last one which gave me this:
dll.exp: file not recognized: File format not recognized collect2: ld returned 1 exit status dmake: Error code 129, while making '..\blib\arch\auto\Win32\GUI\Cons +tants\Constants.dll' dmake.EXE: Error code 255, while making 'subdirs' ROBERTMAY/Win32-GUI/Win32-GUI-1.06.tar.gz C:\strawberry\c\bin\dmake.EXE -- NOT OK Running make test Can't test without successful make Running make install Make had returned bad status, install seems impossible
- Cbeppe

Replies are listed 'Best First'.
Re^8: Win32::GUI Installation Errors
by syphilis (Archbishop) on Dec 21, 2010 at 02:06 UTC
    In the absence of a better idea, I guess we could look at trying to establish whether there's something wrong with dll.exp, or whether the recognition process is faulty.

    For me, Win32-GUI-1.06\Win32-GUI-Constants\dll.exp is 1,216 bytes in size and its various hex digests are:
    MD5: 9488f6ef92ef88f3867d39f344aa8a8d SHA1: dce9b72820949b476b2ad3c664a4253f6fe52581 SHA256: 5b8a8a51ee006032c8591aadb805c5b6d8ba4230dc540bd8eb4e126c62d56a +f3
    How does that compare with what you have ? (No need to reproduce all 3 digests - any 1 would be sufficient. And if the size of your dll.exp is not 1,216 bytes then there's no point in providing any hex digest.)

    Not sure if any of that will be at all useful, though I am curious to know if the dll.exp file that you have is faulty.
    Alternatively, if there's somewhere on the web to which you can upload that file, we could see for ourselves what it looks like.

    Cheers,
    Rob
      My dll.exp file is only 726 bytes. However, it is only created AFTER I run dmake. From the messages that I'm getting, it seems that dll.exp is an output file that is created from running a file called Constants.def.

      This is where things go wrong in dmake. Notice the first line:

      dlltool --def Constants.def --output-exp dll.exp
      g++ -o ..\blib\arch\auto\Win32\GUI\Constants\Constants.dll -Wl,--base-file -Wl,dll.base -mdll -s -L"C:\strawberry\perl\lib\CORE" -L"C:\strawberry\c\lib" Constants.o
      Constants.res -Wl,--image-base,0x370e0000 C:\strawberry\perl\lib\CORE\libperl510.a -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 dll.exp
      dll.exp: file not recognized: File format not recognized
      collect2: ld returned 1 exit status
      dmake: Error code 129, while making '..\blib\arch\auto\Win32\GUI\Constants\Constants.dll'
      dmake: Error code 255, while making 'subdirs'

      To me it seems like dlltool.exe is trying to create dll.exp from Constants.def, but fails and therefore produces a wrongly formatted dll.exp. These are also in the same directory by default.

      If anyone wants to see the two files, you can download them from this link:
      http://rapidshare.com/files/438513360/DllexpConstantsdef.rar

      Again, thanks for helping me out on this!
      - Cbeppe