http://www.perlmonks.org?node_id=907903


in reply to Re^3: "Tcl.xs:126: error: initializer element is not constant" while installing Tcl-1.02 in Strawberry Perl v5.10 on Windoze XP
in thread "Tcl.xs:126: error: initializer element is not constant" while installing Tcl-1.02 in Strawberry Perl v5.10 on Windoze XP

The offending line in Tcl.xs is:

Actuall, that line probably has nothing to do with it, really :)

$ set path=%path%;C:\Tcl8.6\bin $ perl Makefile.PL tclsh=C:/Tcl8.6/bin/tclsh.exe tclConfig.sh=C:/Tcl8.6/lib/tclConfig.sh tcl_library=C:/Tcl8.6/lib/tcl8.6 tcl_version=8.6 LIBS = -LC:/Tcl8.6/lib -ltcl86 INC = -IC:/Tcl8.6/include DEFINE = Checking if your kit is complete... Looks good Note (probably harmless): No library found for -ltcl86 Writing Makefile for Tcl $ perl -pi.bak -e " s/\[.\$libpath/[\x22:nosearch \$libpath/ " Makef +ile.PL $ perl Makefile.PL tclsh=C:/Tcl8.6/bin/tclsh.exe tclConfig.sh=C:/Tcl8.6/lib/tclConfig.sh tcl_library=C:/Tcl8.6/lib/tcl8.6 tcl_version=8.6 LIBS = -LC:/Tcl8.6/lib -ltcl86 INC = -IC:/Tcl8.6/include DEFINE = Writing Makefile for Tcl $ dmake cp Tcl.pm blib\lib\Tcl.pm C:\perl\5.12.2\bin\MSWin32-x86-multi-thread\perl.exe C:\perl\5.12.2\li +b\ExtUtils\xsubpp -typemap C:\perl\5.12.2\lib\ExtUtils\typemap -type +map typemap Tcl.xs > Tcl.xsc && C:\perl\5.12.2\bin\MSWin32-x86-multi +-thread\perl.exe -MExtUtils::Command -e "mv" -- Tcl.xsc Tcl.c gcc -c -IC:/Tcl8.6/include -s -O2 -DWIN32 -DHAVE_DES_FCRYPT -DPER +L_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -mms-bitf +ields -DPERL_MSVCRT_READFIX -s -O2 -DVERSION=\"1.02\" -DXS_ +VERSION=\"1.02\" "-IC:\perl\5.12.2\lib\MSWin32-x86-multi-thread\CORE +" Tcl.c Running Mkbootstrap for Tcl () C:\perl\5.12.2\bin\MSWin32-x86-multi-thread\perl.exe -MExtUtils::Comma +nd -e "chmod" -- 644 Tcl.bs C:\perl\5.12.2\bin\MSWin32-x86-multi-thread\perl.exe -MExtUtils::Mksym +lists \ -e "Mksymlists('NAME'=>\"Tcl\", 'DLBASE' => 'Tcl', 'DL_FUNCS' => +{ }, 'FUNCLIST' => [], '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:\perl\5.12.2\lib\MSWin32-x86-multi-thread\CORE" -L"C:\MinGW\li +b" Tcl.o -Wl,--image-base,0x300f0000 C:\perl\5.12.2\lib\MSWin32-x86- +multi-thread\CORE\libperl512.a -LC:\Tcl8.6\lib -ltcl86 -lmoldname -lk +ernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 - +lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm -lversion +-lodbc32 -lodbccp32 -lcomctl32 dll.exp dlltool --def Tcl.def --base-file dll.base --output-exp dll.exp g++ -o blib\arch\auto\Tcl\Tcl.dll -mdll -s -L"c:\perl\5.12.2\lib\MSWin +32-x86-multi-thread\CORE" -L"C:\MinGW\lib" Tcl.o -Wl,--image-base,0x3 +00f0000 C:\perl\5.12.2\lib\MSWin32-x86-multi-thread\CORE\libperl512. +a -LC:\Tcl8.6\lib -ltcl86 -lmoldname -lkernel32 -luser32 -lgdi32 -lwi +nspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 +-luuid -lws2_32 -lmpr -lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl3 +2 dll.exp C:\perl\5.12.2\bin\MSWin32-x86-multi-thread\perl.exe -MExtUtils::Comma +nd -e "chmod" -- 755 blib\arch\auto\Tcl\Tcl.dll C:\perl\5.12.2\bin\MSWin32-x86-multi-thread\perl.exe -MExtUtils::Comma +nd -e "cp" -- Tcl.bs blib\arch\auto\Tcl\Tcl.bs C:\perl\5.12.2\bin\MSWin32-x86-multi-thread\perl.exe -MExtUtils::Comma +nd -e "chmod" -- 644 blib\arch\auto\Tcl\Tcl.bs
  • Comment on Re^4: "Tcl.xs:126: error: initializer element is not constant" while installing Tcl-1.02 in Strawberry Perl v5.10 on Windoze XP
  • Download Code

Replies are listed 'Best First'.
Re^5: "Tcl.xs:126: error: initializer element is not constant" while installing Tcl-1.02 in Strawberry Perl v5.10 on Windoze XP
by NateTut (Deacon) on Jun 03, 2011 at 17:29 UTC
    I tried adding the ":nosearch" to the libpath, but I'm still getting the same error.
      I have gcc (GCC) 4.5.2, IIRC strawberry has 3.5..., which is probably why I don't need vkons patch, sorry :)