Skip Menu |

This queue is for tickets about the Want CPAN distribution.

Report information
The Basics
Id: 3204
Status: resolved
Priority: 0/
Queue: Want

People
Owner: robin [...] cpan.org
Requestors: djberg96 [...] yahoo.com
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 0.06
Fixed in: (no value)



Subject: Want-0.06 on Windows XP
Windows XP Home Visual C++ 6.0 C:\Perl\src\Want-0.06>perl -v This is perl, v5.8.0 built for MSWin32-x86-multi-thread (with 1 registered patch, see perl -V for more detail) Copyright 1987-2002, Larry Wall Binary build 806 provided by ActiveState Corp. http://www.ActiveState.com Built 00:45:44 Mar 31 2003 Want-0.06 dies during the build phase with the following error. Also note the warning, which may be of importance. C:\Perl\src\Want-0.06>nmake Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 Copyright (C) Microsoft Corp 1988-1998. All rights reserved. cp Want.pm blib\lib\Want.pm C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils/xsubpp -typemap C:\Perl\lib\ExtUtils\typemap Wan t.xs > Want.xsc && C:\Perl\bin\perl.exe -MExtUtils::Command -e mv Want.xsc Want.c cl -c -nologo -Gf -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRY PT -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -MD -Zi -DNDEBUG - O1 -DVERSION=\"0.06\" -DXS_VERSION=\"0.06\" "-IC:\Perl\lib\CORE" Want.c Want.c Want.xs(355) : warning C4018: '<=' : signed/unsigned mismatch "Running Mkbootstrap for Want ()" C:\Perl\bin\perl.exe -MExtUtils::Command -e chmod 644 Want.bs C:\Perl\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists('NAME'=>\"Want\", 'DLBASE' => 'W ant', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" link -out:blib\arch\auto\Want\Want.dll -dll -nologo -nodefaultlib -debug -opt:ref,icf -libp ath:"C:\Perl\lib\CORE" -machine:x86 Want.obj C:\Perl\lib\CORE\perl58.lib oldnames.lib kernel32.li b user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib n etapi32.lib uuid.lib wsock32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib msvcrt.lib - def:Want.def Creating library blib\arch\auto\Want\Want.lib and object blib\arch\auto\Want\Want.exp Want.obj : error LNK2001: unresolved external symbol _Perl_pop_return blib\arch\auto\Want\Want.dll : fatal error LNK1120: 1 unresolved externals NMAKE : fatal error U1077: 'link' : return code '0x460' Stop.
Date: Mon, 11 Aug 2003 10:37:18 +0100
From: Robin Houston <rhouston [...] maths.man.ac.uk>
To: via RT <bug-Want [...] rt.cpan.org>
CC: DJBERG [...] cpan.org
Subject: Re: [cpan #3204] Want-0.06 on Windows XP
RT-Send-Cc:
Thanks for this. The warning is interesting (and I'll fix it) but is unlikely to cause real problems. The Perl_pop_return thing is a real pain though! Could you try changing that line (third from the end in Want.xs) to just pop_return rather than Perl_pop_return and see if that makes any difference? If you know anything about Win32 object files (I don't) then it would be interesting to know whether(Perl_)pop_return is exported by the Perl .lib (and if not, why not!) Also, what is oldnames.lib? Perhaps that's relevant... Any help would be much appreciated. .robin. On Sun, Aug 10, 2003 at 08:02:37PM -0400, via RT wrote: Show quoted text
> > This message about Want was sent to you by DJBERG <DJBERG@cpan.org> via rt.cpan.org > > Full context and any attached attachments can be found at: > <URL: https://rt.cpan.org/Ticket/Display.html?id=3204 > > > Windows XP Home > Visual C++ 6.0 > > C:\Perl\src\Want-0.06>perl -v > > This is perl, v5.8.0 built for MSWin32-x86-multi-thread > (with 1 registered patch, see perl -V for more detail) > > Copyright 1987-2002, Larry Wall > > Binary build 806 provided by ActiveState Corp. http://www.ActiveState.com > Built 00:45:44 Mar 31 2003 > > Want-0.06 dies during the build phase with the following error. Also note the warning, which may be of importance. > > C:\Perl\src\Want-0.06>nmake > > Microsoft (R) Program Maintenance Utility Version 6.00.8168.0 > Copyright (C) Microsoft Corp 1988-1998. All rights reserved. > > cp Want.pm blib\lib\Want.pm > C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils/xsubpp -typemap C:\Perl\lib\ExtUtils\typemap Wan > t.xs > Want.xsc && C:\Perl\bin\perl.exe -MExtUtils::Command -e mv Want.xsc Want.c > cl -c -nologo -Gf -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRY > PT -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -MD -Zi -DNDEBUG - > O1 -DVERSION=\"0.06\" -DXS_VERSION=\"0.06\" "-IC:\Perl\lib\CORE" Want.c > Want.c > Want.xs(355) : warning C4018: '<=' : signed/unsigned mismatch > "Running Mkbootstrap for Want ()" > C:\Perl\bin\perl.exe -MExtUtils::Command -e chmod 644 Want.bs > C:\Perl\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists('NAME'=>\"Want\", 'DLBASE' => 'W > ant', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" > link -out:blib\arch\auto\Want\Want.dll -dll -nologo -nodefaultlib -debug -opt:ref,icf -libp > ath:"C:\Perl\lib\CORE" -machine:x86 Want.obj C:\Perl\lib\CORE\perl58.lib oldnames.lib kernel32.li > b user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib n > etapi32.lib uuid.lib wsock32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib msvcrt.lib - > def:Want.def > Creating library blib\arch\auto\Want\Want.lib and object blib\arch\auto\Want\Want.exp > Want.obj : error LNK2001: unresolved external symbol _Perl_pop_return > blib\arch\auto\Want\Want.dll : fatal error LNK1120: 1 unresolved externals > NMAKE : fatal error U1077: 'link' : return code '0x460' > Stop. >
[rhouston@maths.man.ac.uk - Mon Aug 11 05:37:31 2003]: Show quoted text
> Thanks for this. The warning is interesting (and I'll fix it) > but is unlikely to cause real problems. The Perl_pop_return > thing is a real pain though! Could you try changing that > line (third from the end in Want.xs) to just pop_return > rather than Perl_pop_return and see if that makes any > difference? > > If you know anything about Win32 object files (I don't) then > it would be interesting to know whether(Perl_)pop_return is > exported by the Perl .lib (and if not, why not!) Also, what > is oldnames.lib? Perhaps that's relevant... > > Any help would be much appreciated. > > .robin.
Here's what happened when I tried that. Note that it complains about "too few actual parameters" to pop_return() and, very strangely, gives me the same "unresolved external symbol", even though I've changed the method name. I definitely did a clean install, so I'm very confused now. Checking around on Google, it looks like this may actually be a bug in 5.8, but I'm not positive. C:\Perl\src\Want-0.06>nmake Microsoft (R) Program Maintenance Utility Version 1.62.7022 Copyright (C) Microsoft Corp 1988-1997. All rights reserved. cp Want.pm blib\lib\Want.pm C:\Perl\bin\perl.exe C:\Perl\lib\ExtUtils/xsubpp -typemap C:\Perl\lib\ExtUtils\typemap Want.xs > Want.xsc && C :\Perl\bin\perl.exe -MExtUtils::Command -e mv Want.xsc Want.c cl -c -nologo -Gf -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DPERL_IMPLICIT_C ONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -MD -Zi -DNDEBUG -O1 -DVERSION=\"0.06\" -DXS_VERSION=\ "0.06\" "-IC:\Perl\lib\CORE" Want.c Want.c Want.xs(355) : warning C4018: '<=' : signed/unsigned mismatch Want.xs(564) : warning C4002: too many actual parameters for macro 'pop_return' "Running Mkbootstrap for Want ()" C:\Perl\bin\perl.exe -MExtUtils::Command -e chmod 644 Want.bs C:\Perl\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists('NAME'=>\"Want\", 'DLBASE' => 'Want', 'DL_FUNCS' => { }, 'FUNCLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" link -out:blib\arch\auto\Want\Want.dll -dll -nologo -nodefaultlib -debug -opt:ref,icf -libpath:"C:\Perl\lib\COR E" -machine:x86 Want.obj C:\Perl\lib\CORE\perl58.lib oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib com dlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib wsock32.lib mpr.lib winmm.lib version. lib odbc32.lib odbccp32.lib msvcrt.lib -def:Want.def Creating library blib\arch\auto\Want\Want.lib and object blib\arch\auto\Want\Want.exp Want.obj : error LNK2001: unresolved external symbol _Perl_pop_return blib\arch\auto\Want\Want.dll : fatal error LNK1120: 1 unresolved externals NMAKE : fatal error U1077: 'link' : return code '0x460' Stop.
Date: Thu, 14 Aug 2003 16:14:34 +0100
From: Robin Houston <rhouston [...] maths.man.ac.uk>
To: Guest via RT <bug-Want [...] rt.cpan.org>
CC: DJBERG [...] cpan.org
Subject: Re: [cpan #3204] Want-0.06 on Windows XP
RT-Send-Cc:
On Mon, Aug 11, 2003 at 10:43:37PM -0400, Guest via RT wrote: Show quoted text
> Here's what happened when I tried that. Note that it complains about > "too few actual parameters" to pop_return() and, very strangely, gives > me the same "unresolved external symbol", even though I've changed the > method name. I definitely did a clean install, so I'm very confused now.
I assume that some header does #define pop_return() Perl_pop_return(aTHX) which explains both the warning and the link error. I think we need someone who understands Win32 linking to help us. I'll try asking p5p. .robin.
Date: Mon, 18 Aug 2003 10:37:56 +0100
From: Robin Houston <rhouston [...] maths.man.ac.uk>
To: Robin Houston via RT <bug-Want [...] rt.cpan.org>
CC: djberg [...] cpan.org
Subject: Re: [cpan #3204] Want-0.06 on Windows XP
RT-Send-Cc:
Okay, p5p have been extremely helpful! Could you try the attached? If it works for you, it will become Want-0.07 later today. .robin.
Download Want-0.07.tgz
application/x-gzip 14k

Message body not shown because it is not plain text.

This is fixed in Want 0.07, which is making its way to the CPAN as I type.