Skip Menu |

This queue is for tickets about the Tcl CPAN distribution.

Report information
The Basics
Id: 71535
Status: resolved
Priority: 0/
Queue: Tcl

People
Owner: Nobody in particular
Requestors: ASB [...] cpan.org
Cc: PLICEASE [...] cpan.org
AdminCc:

Bug Information
Severity: Critical
Broken in: 1.02
Fixed in: (no value)



Subject: build fails on Windows 7 x64
Hi! When I try to build this module, I get the following error: collect2: ld returned 1 exit status dmake: Error code 129, while making 'blib\arch\auto\Tcl\Tcl.dll' Full log is attached. I'm working with 64-bit strawberry perl. HTH Alex
Subject: build-1.02.fail.txt
C:\temp\tcl\Tcl-1.02>perl -v This is perl 5, version 12, subversion 2 (v5.12.2) built for MSWin32-x64-multi-t hread Copyright 1987-2010, Larry Wall Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page. C:\temp\tcl\Tcl-1.02>perl Makefile.PL tclsh=C:/Tcl/bin/tclsh.exe tclConfig.sh=C:/Tcl/lib/tclConfig.sh tcl_library=C:/Tcl/lib/tcl8.5 tcl_version=8.5 LIBS = -LC:/Tcl/lib -ltcl85 INC = -IC:/Tcl/include DEFINE = Checking if your kit is complete... Looks good Writing Makefile for Tcl Writing MYMETA.yml and MYMETA.json C:\temp\tcl\Tcl-1.02>dmake cp Tcl.pm blib\lib\Tcl.pm C:\strawberry\perl\bin\perl.exe C:\strawberry\perl\lib\ExtUtils\xsubpp -typemap C:\strawberry\perl\lib\ExtUtils\typemap -typemap typemap Tcl.xs > Tcl.xsc && C :\strawberry\perl\bin\perl.exe -MExtUtils::Command -e "mv" -- Tcl.xsc Tcl.c Please specify prototyping behavior for Tcl.xs (see perlxs manual) gcc -c -IC:/Tcl/include -s -O2 -DWIN32 -DHAVE_DES_FCRYPT -DWIN64 -DCONSE RVATIVE -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-str ict-aliasing -mms-bitfields -DPERL_MSVCRT_READFIX -s -O2 -DVERSION=\"1. 02\" -DXS_VERSION=\"1.02\" "-IC:\strawberry\perl\lib\CORE" Tcl.c Running Mkbootstrap for Tcl () C:\strawberry\perl\bin\perl.exe -MExtUtils::Command -e "chmod" -- 644 Tcl.bs C:\strawberry\perl\bin\perl.exe -MExtUtils::Mksymlists \ -e "Mksymlists('NAME'=>\"Tcl\", 'DLBASE' => 'Tcl', 'DL_FUNCS' => { }, 'FUN CLIST' => [], 'IMPORTS' => { }, 'DL_VARS' => []);" dlltool --def Tcl.def --output-exp dll.exp g++ -o blib\arch\auto\Tcl\Tcl.dll -Wl,--base-file -Wl,dll.base -mdll -s -L"C:\st rawberry\perl\lib\CORE" -L"C:\strawberry\c\lib" Tcl.o C:\strawberry\perl\lib\C ORE\libperl512.a C:\Tcl\lib\tcl85.a C:\strawberry\c\x86_64-w64-mingw32\lib\libmo ldname.a C:\strawberry\c\x86_64-w64-mingw32\lib\libkernel32.a C:\strawberry\c\x8 6_64-w64-mingw32\lib\libuser32.a C:\strawberry\c\x86_64-w64-mingw32\lib\libgdi32 .a C:\strawberry\c\x86_64-w64-mingw32\lib\libwinspool.a C:\strawberry\c\x86_64-w 64-mingw32\lib\libcomdlg32.a C:\strawberry\c\x86_64-w64-mingw32\lib\libadvapi32. a C:\strawberry\c\x86_64-w64-mingw32\lib\libshell32.a C:\strawberry\c\x86_64-w64 -mingw32\lib\libole32.a C:\strawberry\c\x86_64-w64-mingw32\lib\liboleaut32.a C:\ strawberry\c\x86_64-w64-mingw32\lib\libnetapi32.a C:\strawberry\c\x86_64-w64-min gw32\lib\libuuid.a C:\strawberry\c\x86_64-w64-mingw32\lib\libws2_32.a C:\strawbe rry\c\x86_64-w64-mingw32\lib\libmpr.a C:\strawberry\c\x86_64-w64-mingw32\lib\lib winmm.a C:\strawberry\c\x86_64-w64-mingw32\lib\libversion.a C:\strawberry\c\x86_ 64-w64-mingw32\lib\libodbc32.a C:\strawberry\c\x86_64-w64-mingw32\lib\libodbccp3 2.a C:\strawberry\c\x86_64-w64-mingw32\lib\libcomctl32.a dll.exp Tcl.o:Tcl.c:(.text+0x490): undefined reference to `_imp__Tcl_FindExecutable' Tcl.o:Tcl.c:(.text+0x4ae): undefined reference to `_imp__Tcl_GetObjType' Tcl.o:Tcl.c:(.text+0xcf2): undefined reference to `_imp__Tcl_NewIntObj' Tcl.o:Tcl.c:(.text+0xd21): undefined reference to `_imp__Tcl_NewStringObj' Tcl.o:Tcl.c:(.text+0xd82): undefined reference to `_imp__Tcl_NewByteArrayObj' Tcl.o:Tcl.c:(.text+0xdca): undefined reference to `_imp__Tcl_NewListObj' Tcl.o:Tcl.c:(.text+0xddd): undefined reference to `_imp__Tcl_ListObjAppendElemen t' Tcl.o:Tcl.c:(.text+0xde6): undefined reference to `_imp__Tcl_NewObj' Tcl.o:Tcl.c:(.text+0xea6): undefined reference to `_imp__Tcl_NewDoubleObj' Tcl.o:Tcl.c:(.text+0xeb9): undefined reference to `_imp__Tcl_NewByteArrayObj' Tcl.o:Tcl.c:(.text+0xefe): undefined reference to `_imp__Tcl_NewStringObj' Tcl.o:Tcl.c:(.text+0x111a): undefined reference to `_imp__Tcl_SetVar2Ex' Tcl.o:Tcl.c:(.text+0x12ae): undefined reference to `_imp__Tcl_SetVar2Ex' Tcl.o:Tcl.c:(.text+0x1395): undefined reference to `_imp__Tcl_GetStringFromObj' Tcl.o:Tcl.c:(.text+0x14b0): undefined reference to `_imp__Tcl_GetStringFromObj' Tcl.o:Tcl.c:(.text+0x14de): undefined reference to `_imp__Tcl_ListObjGetElements ' Tcl.o:Tcl.c:(.text+0x161c): undefined reference to `_imp__Tcl_GetByteArrayFromOb j' Tcl.o:Tcl.c:(.text+0x1805): undefined reference to `_imp__Tcl_GetVar2Ex' Tcl.o:Tcl.c:(.text+0x1b50): undefined reference to `_imp__Tcl_GetVar2Ex' Tcl.o:Tcl.c:(.text+0x1dfe): undefined reference to `_imp__Tcl_GetVar2Ex' Tcl.o:Tcl.c:(.text+0x20df): undefined reference to `_imp__Tcl_SetVar2Ex' Tcl.o:Tcl.c:(.text+0x23d1): undefined reference to `_imp__Tcl_SetVar2Ex' Tcl.o:Tcl.c:(.text+0x25da): undefined reference to `_imp__Tcl_GetStringFromObj' Tcl.o:Tcl.c:(.text+0x26ac): undefined reference to `_imp__TclFreeObj' Tcl.o:Tcl.c:(.text+0x2830): undefined reference to `_imp__Tcl_UnsetVar2' Tcl.o:Tcl.c:(.text+0x2aee): undefined reference to `_imp__Tcl_UnsetVar2' Tcl.o:Tcl.c:(.text+0x2d64): undefined reference to `_imp__Tcl_SplitList' Tcl.o:Tcl.c:(.text+0x2e43): undefined reference to `_imp__Tcl_Free' Tcl.o:Tcl.c:(.text+0x2fc5): undefined reference to `_imp__Tcl_DeleteCommand' Tcl.o:Tcl.c:(.text+0x3069): undefined reference to `_imp__Tcl_DeleteCommand' Tcl.o:Tcl.c:(.text+0x31b3): undefined reference to `_imp__Tcl_GetObjResult' Tcl.o:Tcl.c:(.text+0x31c6): undefined reference to `_imp__Tcl_AppendObjToObj' Tcl.o:Tcl.c:(.text+0x345b): undefined reference to `_imp__Tcl_GetObjResult' Tcl.o:Tcl.c:(.text+0x3580): undefined reference to `_imp__Tcl_ResetResult' Tcl.o:Tcl.c:(.text+0x3723): undefined reference to `_imp__Tcl_AppendElement' Tcl.o:Tcl.c:(.text+0x38e1): undefined reference to `_imp__Tcl_SetObjResult' Tcl.o:Tcl.c:(.text+0x3b42): undefined reference to `_imp__Tcl_CreateCommand' Tcl.o:Tcl.c:(.text+0x3d7f): undefined reference to `_imp__Tcl_CreateObjCommand' Tcl.o:Tcl.c:(.text+0x4057): undefined reference to `_imp__Tcl_DoOneEvent' Tcl.o:Tcl.c:(.text+0x41aa): undefined reference to `_imp__Tcl_Init' Tcl.o:Tcl.c:(.text+0x41d5): undefined reference to `_imp__Tcl_CreateObjCommand' Tcl.o:Tcl.c:(.text+0x4243): undefined reference to `_imp__Tcl_GetStringResult' Tcl.o:Tcl.c:(.text+0x4346): undefined reference to `_imp__Tcl_DeleteInterp' Tcl.o:Tcl.c:(.text+0x4396): undefined reference to `_imp__Tcl_Finalize' Tcl.o:Tcl.c:(.text+0x4549): undefined reference to `_imp__Tcl_DeleteInterp' Tcl.o:Tcl.c:(.text+0x46f2): undefined reference to `_imp__Tcl_CreateInterp' Tcl.o:Tcl.c:(.text+0x4833): undefined reference to `_imp__Tcl_GetObjResult' Tcl.o:Tcl.c:(.text+0x48b3): undefined reference to `_imp__Tcl_ListObjGetElements ' Tcl.o:Tcl.c:(.text+0x4bc6): undefined reference to `_imp__Tcl_ResetResult' Tcl.o:Tcl.c:(.text+0x4bd7): undefined reference to `_imp__Tcl_EvalObjv' Tcl.o:Tcl.c:(.text+0x4bde): undefined reference to `_imp__TclFreeObj' Tcl.o:Tcl.c:(.text+0x4ccd): undefined reference to `_imp__Tcl_GetStringResult' Tcl.o:Tcl.c:(.text+0x4e82): undefined reference to `_imp__Tcl_GetCommandInfo' Tcl.o:Tcl.c:(.text+0x4f1c): undefined reference to `_imp__Tcl_ResetResult' Tcl.o:Tcl.c:(.text+0x502b): undefined reference to `_imp__Tcl_GetString' Tcl.o:Tcl.c:(.text+0x5057): undefined reference to `_imp__Tcl_ResetResult' Tcl.o:Tcl.c:(.text+0x509a): undefined reference to `_imp__TclFreeObj' Tcl.o:Tcl.c:(.text+0x50fd): undefined reference to `_imp__Tcl_NewStringObj' Tcl.o:Tcl.c:(.text+0x5173): undefined reference to `_imp__Tcl_ResetResult' Tcl.o:Tcl.c:(.text+0x51a9): undefined reference to `_imp__TclFreeObj' Tcl.o:Tcl.c:(.text+0x522c): undefined reference to `_imp__Tcl_GetStringResult' Tcl.o:Tcl.c:(.text+0x538f): undefined reference to `_imp__Tcl_CommandComplete' Tcl.o:Tcl.c:(.text+0x5399): undefined reference to `_imp__Tcl_Eval' Tcl.o:Tcl.c:(.text+0x53a0): undefined reference to `_imp__Tcl_ResetResult' Tcl.o:Tcl.c:(.text+0x53f7): undefined reference to `_imp__Tcl_GetStringResult' Tcl.o:Tcl.c:(.text+0x560e): undefined reference to `_imp__Tcl_ResetResult' Tcl.o:Tcl.c:(.text+0x561a): undefined reference to `_imp__Tcl_EvalFile' Tcl.o:Tcl.c:(.text+0x56e9): undefined reference to `_imp__Tcl_GetStringResult' Tcl.o:Tcl.c:(.text+0x586e): undefined reference to `_imp__Tcl_ResetResult' Tcl.o:Tcl.c:(.text+0x58ba): undefined reference to `_imp__Tcl_EvalEx' Tcl.o:Tcl.c:(.text+0x5a15): undefined reference to `_imp__Tcl_GetStringResult' Tcl.o:Tcl.c:(.text+0x5eeb): undefined reference to `_imp__Tcl_SetResult' Tcl.o:Tcl.c:(.text+0x6150): undefined reference to `_imp__Tcl_SetObjResult' Tcl.o:Tcl.c:(.text+0x64a0): undefined reference to `_imp__Tcl_WrongNumArgs' Tcl.o:Tcl.c:(.text+0x668e): undefined reference to `_imp__Tcl_SetResult' Tcl.o:Tcl.c:(.text+0x67e5): undefined reference to `_imp__Tcl_SetObjResult' collect2: ld returned 1 exit status dmake: Error code 129, while making 'blib\arch\auto\Tcl\Tcl.dll' C:\temp\tcl\Tcl-1.02>
I can confirm that the problem is still there.. On Fri Oct 07 16:05:42 2011, ASB wrote: Show quoted text
> Hi! > > When I try to build this module, I get the following error: > > collect2: ld returned 1 exit status > dmake: Error code 129, while making 'blib\arch\auto\Tcl\Tcl.dll' > > Full log is attached. I'm working with 64-bit strawberry perl. > > HTH > > Alex
Subject: RE: [rt.cpan.org #71535] build fails on Windows 7 x64
Date: Sun, 8 Jan 2017 19:34:19 +0000
To: "bug-Tcl [...] rt.cpan.org" <bug-Tcl [...] rt.cpan.org>
From: "Konovalov, Vadim" <Vadim.Konovalov [...] dell.com>
Oh, sorry, I'll look into the problem
This would be great!! I think the problem is the ActiveState Tcl package. I compiled the TCL source by myself with MSYS/MinGW-64 into C:\tcl86, added C:\tcl86\bin to the path environment variable and could install and test the Tcl Module without problems with "perl ./Makefile.PL --tclsh c:\tcl86\bin\tclsh86 --tclconfig c:\tcl86\lib\tclConfig.sh" But this is not really an user friendly solution. I also don't think, that other people could simply copy my binaries on their machine and perl would find them (I tried to rename c:\tcl86 to c:\tcl and the compilation didn't work; perhaps it would work if someone copy them to c:\tcl86, but I am not really familiar with compiling under windows...) Perhaps one could create an Alien::Tcl package? The next days I will try to complile Tk and install the Tcl::Tk module the same way. But nevertheless I really think, we need a more user friendly way to install Tcl::Tk or Tcl...
I am pretty sure that problem is having 64-bit perl and 32-bit tcl; can you please show us your tclConfig.sh file from tcl install? TIA! :)