[Templates] Installing Tempalte-Toolkit 2.15 under Windows
Randy Kobes
randy@theoryx5.uwinnipeg.ca
Wed, 31 May 2006 16:48:19 -0500 (CDT)
On Mon, 29 May 2006, Anatoly I. Zakharchenko wrote:
> Hi,
>
> I'm trying to install the Template-Toolkit 2.15 in Win2000,
> but I have a problem in the compiling phase.
>
> I edited Stash.xs in the installation folder, inserting
> additional macro definitions as follows:
>
> #ifdef WIN32
> #define snprintf _snprintf
> #endif
>
> However, i see the following error message:
>
> D:\Template-Toolkit-2.15>nmake
>
> Microsoft (R) Program Maintenance Utility Version 7.10.3077
> Copyright (C) Microsoft Corporation. All rights reserved.
>
> nmake -f Makefile all -nologo
> cl -c -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_ST
> RICT -DHAVE_DES_FCRYPT -DNO_HASH_SEED -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEX
> T -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERL_MSVCRT_READFIX -MD -Zi -DNDEBUG -O1
> -DVERSION=\"2.15\" -DXS_VERSION=\"2.15\" "-ID:\Perl\lib\CORE" Stash.c
> Stash.c
> Stash.xs(57) : error C2010: '.' : unexpected in macro formal parameter list
I see that too with VC 6. The problem is that the compiler
doesn't like the dots on line about line 51 of Stash.xs:
#define debug(format, ...)
I'm not sure of a general, portable fix, but one
workaround is to get rid of this line, and then delete
all the calls to debug() in Stash.xs. Another way,
which may be more useful in the future when debugging
is enabled, is to have debug() just take one argument:
#define debug(format)
and then change all the debug() calls to take just
one argument.
--
best regards,
Randy Kobes