in reply to Installing Template::Toolkit on Windows

Hm. I issued the following sequence of commands into a command window:

cd \perl64\packages wget "http://search.cpan.org/CPAN/authors/id/A/AB/ABW/Template-Toolkit +-2.24.tar.gz" gunzip Template-Toolkit-2.24.tar.gz tar -xvf Template-Toolkit-2.24.tar cd Template-Toolkit-2.24 makefile to build the XS Stash module? [y] y to use the XS Stash by default? [y] y nmake nmake test ... All tests successful. Files=89, Tests=2762, 26 wallclock secs ( 0.70 usr + 0.23 sys = 0.94 + CPU) Result: PASS C:\PROGRA~2\MICROS~1.0\VC\Bin\amd64\nmake.exe test -nologo 'No tests defined for Template::Stash::XS extension.' cd ..

The results after less than 2 minutes was T::T downloaded, unpacked, compiled, tested and ready to install.

ASPerl 5.10.1 & MSVC.

Full console log of the above:

C:\perl64\packages>wget "http://search.cpan.org/CPAN/authors/id/A/AB/A +BW/Template-Toolkit-2.24.tar.gz" --2013-02-27 16:49:44-- http://search.cpan.org/CPAN/authors/id/A/AB/A +BW/Template-Toolkit-2.24.tar.gz Resolving search.cpan.org... 199.15.176.161 Connecting to search.cpan.org|199.15.176.161|:80... connected. HTTP request sent, awaiting response... 302 Found Location: http://www.cpan.org/authors/id/A/AB/ABW/Template-Toolkit-2.2 +4.tar.gz [following] --2013-02-27 16:49:44-- http://www.cpan.org/authors/id/A/AB/ABW/Templ +ate-Toolkit-2.24.tar.gz Resolving www.cpan.org... 212.117.177.118 Connecting to www.cpan.org|212.117.177.118|:80... connected. HTTP request sent, awaiting response... 200 OK Length: 499410 (488K) [application/x-gzip] Saving to: `Template-Toolkit-2.24.tar.gz' 100%[================================================================= +================================================== 2013-02-27 16:49:45 (1.27 MB/s) - `Template-Toolkit-2.24.tar.gz' saved + [499410/499410] C:\perl64\packages>gunzip Template-Toolkit-2.24.tar.gz C:\perl64\packages>tar -xvf Template-Toolkit-2.24.tar Template-Toolkit-2.24/ Template-Toolkit-2.24/bin/ Template-Toolkit-2.24/Changes Template-Toolkit-2.24/HACKING Template-Toolkit-2.24/images/ Template-Toolkit-2.24/INSTALL Template-Toolkit-2.24/lib/ Template-Toolkit-2.24/Makefile.PL Template-Toolkit-2.24/MANIFEST Template-Toolkit-2.24/META.json Template-Toolkit-2.24/META.yml Template-Toolkit-2.24/parser/ Template-Toolkit-2.24/README Template-Toolkit-2.24/t/ Template-Toolkit-2.24/TODO Template-Toolkit-2.24/xs/ Template-Toolkit-2.24/xs/Makefile.PL Template-Toolkit-2.24/xs/MANIFEST Template-Toolkit-2.24/xs/ppport.h Template-Toolkit-2.24/xs/README Template-Toolkit-2.24/xs/Stash.xs Template-Toolkit-2.24/t/args.t Template-Toolkit-2.24/t/assert.t Template-Toolkit-2.24/t/base.t Template-Toolkit-2.24/t/binop.t Template-Toolkit-2.24/t/block.t Template-Toolkit-2.24/t/blocks.t Template-Toolkit-2.24/t/capture.t Template-Toolkit-2.24/t/case.t Template-Toolkit-2.24/t/cgi.t Template-Toolkit-2.24/t/chomp.t Template-Toolkit-2.24/t/compile1.t Template-Toolkit-2.24/t/compile2.t Template-Toolkit-2.24/t/compile3.t Template-Toolkit-2.24/t/compile4.t Template-Toolkit-2.24/t/compile5.t Template-Toolkit-2.24/t/config.t Template-Toolkit-2.24/t/constants.t Template-Toolkit-2.24/t/context.t Template-Toolkit-2.24/t/datafile.t Template-Toolkit-2.24/t/date.t Template-Toolkit-2.24/t/debug.t Template-Toolkit-2.24/t/directive.t Template-Toolkit-2.24/t/directry.t Template-Toolkit-2.24/t/document.t Template-Toolkit-2.24/t/dumper.t Template-Toolkit-2.24/t/error.t Template-Toolkit-2.24/t/evalperl.t Template-Toolkit-2.24/t/exception.t Template-Toolkit-2.24/t/factory.t Template-Toolkit-2.24/t/file.t Template-Toolkit-2.24/t/fileline.t Template-Toolkit-2.24/t/filter.t Template-Toolkit-2.24/t/foreach.t Template-Toolkit-2.24/t/format.t Template-Toolkit-2.24/t/html.t Template-Toolkit-2.24/t/image.t Template-Toolkit-2.24/t/include.t Template-Toolkit-2.24/t/iterator.t Template-Toolkit-2.24/t/leak.t Template-Toolkit-2.24/t/lib/ Template-Toolkit-2.24/t/list.t Template-Toolkit-2.24/t/macro.t Template-Toolkit-2.24/t/math.t Template-Toolkit-2.24/t/object.t Template-Toolkit-2.24/t/output.t Template-Toolkit-2.24/t/parser.t Template-Toolkit-2.24/t/plugins.t Template-Toolkit-2.24/t/plusfile.t Template-Toolkit-2.24/t/pod.t Template-Toolkit-2.24/t/prefix.t Template-Toolkit-2.24/t/proc.t Template-Toolkit-2.24/t/process.t Template-Toolkit-2.24/t/provider.t Template-Toolkit-2.24/t/README Template-Toolkit-2.24/t/ref.t Template-Toolkit-2.24/t/scalar.t Template-Toolkit-2.24/t/service.t Template-Toolkit-2.24/t/skel.t Template-Toolkit-2.24/t/stash-xs-unicode.t Template-Toolkit-2.24/t/stash-xs.t Template-Toolkit-2.24/t/stash.t Template-Toolkit-2.24/t/stashc.t Template-Toolkit-2.24/t/stop.t Template-Toolkit-2.24/t/strcat.t Template-Toolkit-2.24/t/strict.t Template-Toolkit-2.24/t/string.t Template-Toolkit-2.24/t/switch.t Template-Toolkit-2.24/t/table.t Template-Toolkit-2.24/t/tags.t Template-Toolkit-2.24/t/template.t Template-Toolkit-2.24/t/test/ Template-Toolkit-2.24/t/text.t Template-Toolkit-2.24/t/throw.t Template-Toolkit-2.24/t/tiedhash.t Template-Toolkit-2.24/t/try.t Template-Toolkit-2.24/t/unicode.t Template-Toolkit-2.24/t/url.t Template-Toolkit-2.24/t/url2.t Template-Toolkit-2.24/t/vars.t Template-Toolkit-2.24/t/varsv1.t Template-Toolkit-2.24/t/view.t Template-Toolkit-2.24/t/vmethods/ Template-Toolkit-2.24/t/while.t Template-Toolkit-2.24/t/wrap.t Template-Toolkit-2.24/t/wrapper.t Template-Toolkit-2.24/t/zz-pmv.t Template-Toolkit-2.24/t/zz-pod-coverage.t Template-Toolkit-2.24/t/zz-pod-kwalitee.t Template-Toolkit-2.24/t/zz-stash-xs-leak.t Template-Toolkit-2.24/t/vmethods/hash.t Template-Toolkit-2.24/t/vmethods/list.t Template-Toolkit-2.24/t/vmethods/replace.t Template-Toolkit-2.24/t/vmethods/text.t Template-Toolkit-2.24/t/test/dir/ Template-Toolkit-2.24/t/test/lib/ Template-Toolkit-2.24/t/test/plugin/ Template-Toolkit-2.24/t/test/pod/ Template-Toolkit-2.24/t/test/src/ Template-Toolkit-2.24/t/test/tmp/ Template-Toolkit-2.24/t/test/tmp/README Template-Toolkit-2.24/t/test/src/bar/ Template-Toolkit-2.24/t/test/src/baz Template-Toolkit-2.24/t/test/src/benchmark Template-Toolkit-2.24/t/test/src/blam Template-Toolkit-2.24/t/test/src/complex Template-Toolkit-2.24/t/test/src/divisionbyzero Template-Toolkit-2.24/t/test/src/evalperl Template-Toolkit-2.24/t/test/src/foo Template-Toolkit-2.24/t/test/src/foobar Template-Toolkit-2.24/t/test/src/golf Template-Toolkit-2.24/t/test/src/leak1 Template-Toolkit-2.24/t/test/src/leak2 Template-Toolkit-2.24/t/test/src/metadata Template-Toolkit-2.24/t/test/src/mywrap Template-Toolkit-2.24/t/test/src/README Template-Toolkit-2.24/t/test/src/recurse Template-Toolkit-2.24/t/test/src/bar/baz Template-Toolkit-2.24/t/test/src/bar/baz.txt Template-Toolkit-2.24/t/test/pod/test1.pod Template-Toolkit-2.24/t/test/plugin/MyPlugs/ Template-Toolkit-2.24/t/test/plugin/MyPlugs/Bar.pm Template-Toolkit-2.24/t/test/plugin/MyPlugs/Baz.pm Template-Toolkit-2.24/t/test/plugin/MyPlugs/Foo.pm Template-Toolkit-2.24/t/test/lib/after Template-Toolkit-2.24/t/test/lib/badrawperl Template-Toolkit-2.24/t/test/lib/barfed Template-Toolkit-2.24/t/test/lib/before Template-Toolkit-2.24/t/test/lib/blockdef Template-Toolkit-2.24/t/test/lib/chomp Template-Toolkit-2.24/t/test/lib/config Template-Toolkit-2.24/t/test/lib/content Template-Toolkit-2.24/t/test/lib/default Template-Toolkit-2.24/t/test/lib/dos_newlines Template-Toolkit-2.24/t/test/lib/error Template-Toolkit-2.24/t/test/lib/footer Template-Toolkit-2.24/t/test/lib/header Template-Toolkit-2.24/t/test/lib/header.tt2 Template-Toolkit-2.24/t/test/lib/incblock Template-Toolkit-2.24/t/test/lib/inner Template-Toolkit-2.24/t/test/lib/menu Template-Toolkit-2.24/t/test/lib/one/ Template-Toolkit-2.24/t/test/lib/outer Template-Toolkit-2.24/t/test/lib/process Template-Toolkit-2.24/t/test/lib/README Template-Toolkit-2.24/t/test/lib/simple2 Template-Toolkit-2.24/t/test/lib/trimme Template-Toolkit-2.24/t/test/lib/two/ Template-Toolkit-2.24/t/test/lib/udata1 Template-Toolkit-2.24/t/test/lib/udata2 Template-Toolkit-2.24/t/test/lib/warning Template-Toolkit-2.24/t/test/lib/two/bar Template-Toolkit-2.24/t/test/lib/two/foo Template-Toolkit-2.24/t/test/lib/one/foo Template-Toolkit-2.24/t/test/dir/file1 Template-Toolkit-2.24/t/test/dir/file2 Template-Toolkit-2.24/t/test/dir/sub_one/ Template-Toolkit-2.24/t/test/dir/sub_two/ Template-Toolkit-2.24/t/test/dir/xyzfile Template-Toolkit-2.24/t/test/dir/sub_two/waz.html Template-Toolkit-2.24/t/test/dir/sub_two/wiz.html Template-Toolkit-2.24/t/test/dir/sub_one/bar Template-Toolkit-2.24/t/test/dir/sub_one/foo Template-Toolkit-2.24/t/lib/Template/ Template-Toolkit-2.24/t/lib/Template/Plugin/ Template-Toolkit-2.24/t/lib/Template/Plugin/ProcBar.pm Template-Toolkit-2.24/t/lib/Template/Plugin/ProcFoo.pm Template-Toolkit-2.24/t/lib/Template/Plugin/Simple.pm Template-Toolkit-2.24/parser/Grammar.pm.skel Template-Toolkit-2.24/parser/Parser.yp Template-Toolkit-2.24/parser/README Template-Toolkit-2.24/parser/yc Template-Toolkit-2.24/lib/Template/ Template-Toolkit-2.24/lib/Template.pm Template-Toolkit-2.24/lib/Template/Base.pm Template-Toolkit-2.24/lib/Template/Config.pm Template-Toolkit-2.24/lib/Template/Constants.pm Template-Toolkit-2.24/lib/Template/Context.pm Template-Toolkit-2.24/lib/Template/Directive.pm Template-Toolkit-2.24/lib/Template/Document.pm Template-Toolkit-2.24/lib/Template/Exception.pm Template-Toolkit-2.24/lib/Template/FAQ.pod Template-Toolkit-2.24/lib/Template/Filters.pm Template-Toolkit-2.24/lib/Template/Grammar.pm Template-Toolkit-2.24/lib/Template/Iterator.pm Template-Toolkit-2.24/lib/Template/Manual/ Template-Toolkit-2.24/lib/Template/Manual.pod Template-Toolkit-2.24/lib/Template/Modules.pod Template-Toolkit-2.24/lib/Template/Namespace/ Template-Toolkit-2.24/lib/Template/Parser.pm Template-Toolkit-2.24/lib/Template/Plugin/ Template-Toolkit-2.24/lib/Template/Plugin.pm Template-Toolkit-2.24/lib/Template/Plugins.pm Template-Toolkit-2.24/lib/Template/Provider.pm Template-Toolkit-2.24/lib/Template/Service.pm Template-Toolkit-2.24/lib/Template/Stash/ Template-Toolkit-2.24/lib/Template/Stash.pm Template-Toolkit-2.24/lib/Template/Test.pm Template-Toolkit-2.24/lib/Template/Toolkit.pod Template-Toolkit-2.24/lib/Template/Tools/ Template-Toolkit-2.24/lib/Template/Tools.pod Template-Toolkit-2.24/lib/Template/Tutorial/ Template-Toolkit-2.24/lib/Template/Tutorial.pod Template-Toolkit-2.24/lib/Template/View.pm Template-Toolkit-2.24/lib/Template/VMethods.pm Template-Toolkit-2.24/lib/Template/Tutorial/Datafile.pod Template-Toolkit-2.24/lib/Template/Tutorial/Web.pod Template-Toolkit-2.24/lib/Template/Tools/tpage.pod Template-Toolkit-2.24/lib/Template/Tools/ttree.pod Template-Toolkit-2.24/lib/Template/Stash/Context.pm Template-Toolkit-2.24/lib/Template/Stash/XS.pm Template-Toolkit-2.24/lib/Template/Plugin/Assert.pm Template-Toolkit-2.24/lib/Template/Plugin/CGI.pm Template-Toolkit-2.24/lib/Template/Plugin/Datafile.pm Template-Toolkit-2.24/lib/Template/Plugin/Date.pm Template-Toolkit-2.24/lib/Template/Plugin/Directory.pm Template-Toolkit-2.24/lib/Template/Plugin/Dumper.pm Template-Toolkit-2.24/lib/Template/Plugin/File.pm Template-Toolkit-2.24/lib/Template/Plugin/Filter.pm Template-Toolkit-2.24/lib/Template/Plugin/Format.pm Template-Toolkit-2.24/lib/Template/Plugin/HTML.pm Template-Toolkit-2.24/lib/Template/Plugin/Image.pm Template-Toolkit-2.24/lib/Template/Plugin/Iterator.pm Template-Toolkit-2.24/lib/Template/Plugin/Math.pm Template-Toolkit-2.24/lib/Template/Plugin/Pod.pm Template-Toolkit-2.24/lib/Template/Plugin/Procedural.pm Template-Toolkit-2.24/lib/Template/Plugin/Scalar.pm Template-Toolkit-2.24/lib/Template/Plugin/String.pm Template-Toolkit-2.24/lib/Template/Plugin/Table.pm Template-Toolkit-2.24/lib/Template/Plugin/URL.pm Template-Toolkit-2.24/lib/Template/Plugin/View.pm Template-Toolkit-2.24/lib/Template/Plugin/Wrap.pm Template-Toolkit-2.24/lib/Template/Namespace/Constants.pm Template-Toolkit-2.24/lib/Template/Manual/Config.pod Template-Toolkit-2.24/lib/Template/Manual/Credits.pod Template-Toolkit-2.24/lib/Template/Manual/Directives.pod Template-Toolkit-2.24/lib/Template/Manual/Filters.pod Template-Toolkit-2.24/lib/Template/Manual/Internals.pod Template-Toolkit-2.24/lib/Template/Manual/Intro.pod Template-Toolkit-2.24/lib/Template/Manual/Plugins.pod Template-Toolkit-2.24/lib/Template/Manual/Syntax.pod Template-Toolkit-2.24/lib/Template/Manual/Variables.pod Template-Toolkit-2.24/lib/Template/Manual/Views.pod Template-Toolkit-2.24/lib/Template/Manual/VMethods.pod Template-Toolkit-2.24/images/tt2power.gif Template-Toolkit-2.24/images/ttdotorg.gif Template-Toolkit-2.24/bin/README Template-Toolkit-2.24/bin/tpage Template-Toolkit-2.24/bin/tt-bench.pl Template-Toolkit-2.24/bin/tt2inst Template-Toolkit-2.24/bin/ttree C:\perl64\packages>cd Template-Toolkit-2.24 C:\perl64\packages\Template-Toolkit-2.24>makefile Template Toolkit Version 2.24 ============================= Using Win32 defaults. Run 'perl Makefile.PL TT_HELP' for a summary of options. The Template Toolkit requires that the AppConfig module (version 1.56 or later) first be installed. This is used by the 'ttree' program for reading command line options and configuration files. It is available from CPAN: http://www.cpan.org/authors/Andy_Wardley/ Template::Stash::XS ------------------- The Template::Stash module is a core part of the Template Toolkit, implementing the magic for accessing data using the dot notation. There is a high speed version, Template::Stash::XS, written in C. This makes the Template Toolkit run about twice as fast as when using the regular Template::Stash written in Perl. If you've got a C compiler on your system then you can elect to have the XS Stash built. You can also specify that you want to use the XS Stash by default. Note that as of version 2.15 the XS Stash now supports access to tied hashes and arrays. See 'perldoc Template::Config' for further details. Do you want to build the XS Stash module? [y] y Do you want to use the XS Stash by default? [y] y Checking if your kit is complete... Looks good Warning: prerequisite AppConfig 1.56 not found. Checking if your kit is complete... Looks good Writing Makefile for Template::Stash::XS Writing Makefile for Template Configuration complete. You should now run 'C:\PROGRA~2\MICROS~1.0\VC +\Bin\amd64\nmake.exe', 'C:\PROGRA~2\MICROS~1.0\VC\ then 'C:\PROGRA~2\MICROS~1.0\VC\Bin\amd64\nmake.exe install'. See th +e README file for further information. C:\perl64\packages\Template-Toolkit-2.24>nmake Microsoft (R) Program Maintenance Utility Version 9.00.21022.08 Copyright (C) Microsoft Corporation. All rights reserved. cp lib/Template/Stash/XS.pm blib\lib\Template\Stash\XS.pm cp lib/Template/Manual.pod blib\lib\Template\Manual.pod cp lib/Template/Manual/Directives.pod blib\lib\Template\Manual\Directi +ves.pod cp lib/Template/Manual/Views.pod blib\lib\Template\Manual\Views.pod cp lib/Template/Plugin/HTML.pm blib\lib\Template\Plugin\HTML.pm cp lib/Template/Stash.pm blib\lib\Template\Stash.pm cp lib/Template/Context.pm blib\lib\Template\Context.pm cp lib/Template/Manual/Intro.pod blib\lib\Template\Manual\Intro.pod cp lib/Template/Modules.pod blib\lib\Template\Modules.pod cp lib/Template/Manual/Credits.pod blib\lib\Template\Manual\Credits.po +d cp lib/Template/View.pm blib\lib\Template\View.pm cp lib/Template/Plugin/Procedural.pm blib\lib\Template\Plugin\Procedur +al.pm cp lib/Template/Plugin/Iterator.pm blib\lib\Template\Plugin\Iterator.p +m cp lib/Template/Tools/ttree.pod blib\lib\Template\Tools\ttree.pod cp lib/Template/Toolkit.pod blib\lib\Template\Toolkit.pod cp lib/Template/Plugin/Scalar.pm blib\lib\Template\Plugin\Scalar.pm cp lib/Template/Namespace/Constants.pm blib\lib\Template\Namespace\Con +stants.pm cp lib/Template/Tutorial/Web.pod blib\lib\Template\Tutorial\Web.pod cp lib/Template/Iterator.pm blib\lib\Template\Iterator.pm cp lib/Template/Plugin/String.pm blib\lib\Template\Plugin\String.pm cp lib/Template/Plugin/Format.pm blib\lib\Template\Plugin\Format.pm cp lib/Template/Provider.pm blib\lib\Template\Provider.pm cp lib/Template/Plugin/View.pm blib\lib\Template\Plugin\View.pm cp lib/Template/Stash/Context.pm blib\lib\Template\Stash\Context.pm cp lib/Template/Plugin/Filter.pm blib\lib\Template\Plugin\Filter.pm cp lib/Template/Manual/Plugins.pod blib\lib\Template\Manual\Plugins.po +d cp lib/Template/Plugin/Dumper.pm blib\lib\Template\Plugin\Dumper.pm cp lib/Template/Plugin/Datafile.pm blib\lib\Template\Plugin\Datafile.p +m cp lib/Template/Directive.pm blib\lib\Template\Directive.pm cp lib/Template/Plugin/Date.pm blib\lib\Template\Plugin\Date.pm cp lib/Template/Manual/VMethods.pod blib\lib\Template\Manual\VMethods. +pod cp lib/Template/Plugin/File.pm blib\lib\Template\Plugin\File.pm cp lib/Template/Constants.pm blib\lib\Template\Constants.pm cp lib/Template/Plugin/Image.pm blib\lib\Template\Plugin\Image.pm cp lib/Template/Plugin/Assert.pm blib\lib\Template\Plugin\Assert.pm cp lib/Template/Manual/Config.pod blib\lib\Template\Manual\Config.pod cp lib/Template/Test.pm blib\lib\Template\Test.pm cp lib/Template.pm blib\lib\Template.pm cp lib/Template/VMethods.pm blib\lib\Template\VMethods.pm cp lib/Template/Plugin/Table.pm blib\lib\Template\Plugin\Table.pm cp lib/Template/Manual/Variables.pod blib\lib\Template\Manual\Variable +s.pod cp lib/Template/Tools/tpage.pod blib\lib\Template\Tools\tpage.pod cp lib/Template/Parser.pm blib\lib\Template\Parser.pm cp lib/Template/Plugins.pm blib\lib\Template\Plugins.pm cp lib/Template/Manual/Syntax.pod blib\lib\Template\Manual\Syntax.pod cp lib/Template/Grammar.pm blib\lib\Template\Grammar.pm cp lib/Template/Tutorial.pod blib\lib\Template\Tutorial.pod cp lib/Template/Plugin.pm blib\lib\Template\Plugin.pm cp lib/Template/Config.pm blib\lib\Template\Config.pm cp lib/Template/FAQ.pod blib\lib\Template\FAQ.pod cp lib/Template/Plugin/CGI.pm blib\lib\Template\Plugin\CGI.pm cp lib/Template/Tools.pod blib\lib\Template\Tools.pod cp lib/Template/Plugin/Directory.pm blib\lib\Template\Plugin\Directory +.pm cp lib/Template/Plugin/Wrap.pm blib\lib\Template\Plugin\Wrap.pm cp lib/Template/Base.pm blib\lib\Template\Base.pm cp lib/Template/Manual/Filters.pod blib\lib\Template\Manual\Filters.po +d cp lib/Template/Plugin/Math.pm blib\lib\Template\Plugin\Math.pm cp lib/Template/Filters.pm blib\lib\Template\Filters.pm cp lib/Template/Plugin/Pod.pm blib\lib\Template\Plugin\Pod.pm cp lib/Template/Manual/Internals.pod blib\lib\Template\Manual\Internal +s.pod cp lib/Template/Service.pm blib\lib\Template\Service.pm cp lib/Template/Document.pm blib\lib\Template\Document.pm cp lib/Template/Plugin/URL.pm blib\lib\Template\Plugin\URL.pm cp lib/Template/Exception.pm blib\lib\Template\Exception.pm cp lib/Template/Tutorial/Datafile.pod blib\lib\Template\Tutorial\Dataf +ile.pod C:\PROGRA~2\MICROS~1.0\VC\Bin\amd64\nmake.exe -f Makefile all +-nologo C:\perl64\bin\perl.exe C:\perl64\site\lib\ExtUtils\xsubpp -ty +pemap C:\Perl64\lib\ExtUtils\typemap Stash.xs > S cl -c -nologo -GF -W3 -MD -Zi -Ox -GL -fp:precise -DWIN32 - +D_CONSOLE -DNO_STRICT -DHAVE_DES_FCRYPT -DWIN64 -D Stash.c C:\Perl64\lib\CORE\XSUB.h(130) : warning C4005: 'dAX' : macro redefini +tion c:\perl64\packages\template-toolkit-2.24\xs\ppport.h(4073) : s +ee previous definition of 'dAX' C:\Perl64\lib\CORE\XSUB.h(134) : warning C4005: 'dAXMARK' : macro rede +finition c:\perl64\packages\template-toolkit-2.24\xs\ppport.h(4084) : s +ee previous definition of 'dAXMARK' C:\Perl64\lib\CORE\XSUB.h(136) : warning C4005: 'dITEMS' : macro redef +inition c:\perl64\packages\template-toolkit-2.24\xs\ppport.h(4077) : s +ee previous definition of 'dITEMS' C:\Perl64\lib\CORE\XSUB.h(148) : warning C4005: 'dXSTARG' : macro rede +finition c:\perl64\packages\template-toolkit-2.24\xs\ppport.h(4080) : s +ee previous definition of 'dXSTARG' C:\Perl64\lib\CORE\XSUB.h(169) : warning C4005: 'dUNDERBAR' : macro re +definition c:\perl64\packages\template-toolkit-2.24\xs\ppport.h(4066) : s +ee previous definition of 'dUNDERBAR' C:\Perl64\lib\CORE\XSUB.h(172) : warning C4005: 'UNDERBAR' : macro red +efinition c:\perl64\packages\template-toolkit-2.24\xs\ppport.h(4070) : s +ee previous definition of 'UNDERBAR' Stash.xs(151) : warning C4146: unary minus operator applied to unsigne +d type, result still unsigned Stash.xs(158) : warning C4267: 'function' : conversion from 'size_t' t +o 'I32', possible loss of data Stash.xs(163) : warning C4244: 'function' : conversion from 'IV' to 'I +32', possible loss of data Stash.xs(241) : warning C4002: too many actual parameters for macro 'd +ebug' Stash.xs(243) : warning C4267: 'function' : conversion from 'size_t' t +o 'I32', possible loss of data Stash.xs(270) : warning C4267: 'function' : conversion from 'size_t' t +o 'I32', possible loss of data Stash.xs(307) : warning C4244: 'function' : conversion from 'IV' to 'I +32', possible loss of data Stash.xs(364) : warning C4996: '_snprintf': This function or variable +may be unsafe. Consider using _snprintf_s instead. C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\Include\ +stdio.h(358) : see declaration of '_snprintf' Stash.xs(491) : warning C4146: unary minus operator applied to unsigne +d type, result still unsigned Stash.xs(517) : warning C4002: too many actual parameters for macro 'd +ebug' Stash.xs(530) : warning C4002: too many actual parameters for macro 'd +ebug' Stash.xs(534) : warning C4267: 'function' : conversion from 'size_t' t +o 'I32', possible loss of data Stash.xs(536) : warning C4002: too many actual parameters for macro 'd +ebug' Stash.xs(544) : warning C4267: 'function' : conversion from 'size_t' t +o 'I32', possible loss of data Stash.xs(553) : warning C4002: too many actual parameters for macro 'd +ebug' Stash.xs(563) : warning C4244: 'function' : conversion from 'IV' to 'I +32', possible loss of data Stash.xs(565) : warning C4002: too many actual parameters for macro 'd +ebug' Stash.xs(582) : warning C4244: 'function' : conversion from 'IV' to 'I +32', possible loss of data Stash.xs(797) : warning C4101: 'retval' : unreferenced local variable Stash.xs(866) : warning C4101: 'retval' : unreferenced local variable Stash.xs(935) : warning C4267: 'function' : conversion from 'size_t' t +o 'I32', possible loss of data Stash.xs(1191) : warning C4267: 'function' : conversion from 'size_t' +to 'I32', possible loss of data Stash.xs(1251) : warning C4267: 'function' : conversion from 'size_t' +to 'I32', possible loss of data Running Mkbootstrap for Template::Stash::XS () C:\perl64\bin\perl.exe -MExtUtils::Command -e chmod -- 644 XS. +bs C:\perl64\bin\perl.exe -MExtUtils::Mksymlists -e "Mksymlists( +'NAME'=>\"Template::Stash::XS\", 'DLBASE' => 'XS', link -out:..\blib\arch\auto\Template\Stash\XS\XS.dll -dll -nol +ogo -nodefaultlib -debug -opt:ref,icf -ltcg -libp Creating library ..\blib\arch\auto\Template\Stash\XS\XS.lib and obj +ect ..\blib\arch\auto\Template\Stash\XS\XS.exp Generating code Finished generating code if exist ..\blib\arch\auto\Template\Stash\XS\XS.dll.manifest m +t -nologo -manifest ..\blib\arch\auto\Template\Sta if exist ..\blib\arch\auto\Template\Stash\XS\XS.dll.manifest d +el ..\blib\arch\auto\Template\Stash\XS\XS.dll.mani C:\perl64\bin\perl.exe -MExtUtils::Command -e chmod -- 755 ..\ +blib\arch\auto\Template\Stash\XS\XS.dll C:\perl64\bin\perl.exe -MExtUtils::Command -e cp -- XS.bs ..\b +lib\arch\auto\Template\Stash\XS\XS.bs C:\perl64\bin\perl.exe -MExtUtils::Command -e chmod -- 644 ..\ +blib\arch\auto\Template\Stash\XS\XS.bs cd .. C:\perl64\bin\perl.exe -MExtUtils::Command -e cp -- bin/tpage +blib\script\tpage pl2bat.bat blib\script\tpage C:\perl64\bin\perl.exe -MExtUtils::Command -e cp -- bin/ttree +blib\script\ttree pl2bat.bat blib\script\ttree C:\perl64\packages\Template-Toolkit-2.24>nmake test Microsoft (R) Program Maintenance Utility Version 9.00.21022.08 Copyright (C) Microsoft Corporation. All rights reserved. C:\PROGRA~2\MICROS~1.0\VC\Bin\amd64\nmake.exe -f Makefile all +-nologo cd .. C:\perl64\bin\perl.exe "-MExtUtils::Command::MM" "-e" "test_ha +rness(0, 'blib\lib', 'blib\arch')" t/args.t t/asse pmv.t t/zz-pod-coverage.t t/zz-pod-kwalitee.t t/zz-stash-xs-leak.t t/v +methods/hash.t t/vmethods/list.t t/vmethods/replac t/args.t .............. ok t/assert.t ............ ok t/base.t .............. ok t/binop.t ............. ok t/block.t ............. ok t/blocks.t ............ ok t/capture.t ........... ok t/case.t .............. ok t/cgi.t ............... ok t/chomp.t ............. ok t/compile1.t .......... ok t/compile2.t .......... ok t/compile3.t .......... ok t/compile4.t .......... ok t/compile5.t .......... ok t/config.t ............ ok t/constants.t ......... ok t/context.t ........... ok t/datafile.t .......... ok t/date.t .............. ok t/debug.t ............. ok t/directive.t ......... ok t/directry.t .......... skipped: skipping tests on MS Win 32 platform t/document.t .......... ok t/dumper.t ............ ok t/error.t ............. ok t/evalperl.t .......... ok t/exception.t ......... ok t/factory.t ........... ok t/file.t .............. skipped: skipping tests on MS Win 32 platform t/fileline.t .......... ok t/filter.t ............ ok t/foreach.t ........... ok t/format.t ............ ok t/html.t .............. ok t/image.t ............. skipped: Neither Image::Info nor Image::Size i +nstalled t/include.t ........... ok t/iterator.t .......... ok t/leak.t .............. ok t/list.t .............. ok t/macro.t ............. ok t/math.t .............. ok t/object.t ............ ok t/output.t ............ ok t/parser.t ............ ok t/plugins.t ........... ok t/plusfile.t .......... ok t/pod.t ............... skipped: Pod::POM not installed t/prefix.t ............ ok t/proc.t .............. ok t/process.t ........... ok t/provider.t .......... ok t/ref.t ............... ok t/scalar.t ............ ok t/service.t ........... ok t/skel.t .............. ok t/stash-xs-unicode.t .. ok t/stash-xs.t .......... ok t/stash.t ............. ok t/stashc.t ............ ok t/stop.t .............. ok t/strcat.t ............ ok t/strict.t ............ ok t/string.t ............ ok t/switch.t ............ ok t/table.t ............. ok t/tags.t .............. ok t/template.t .......... ok t/text.t .............. ok t/throw.t ............. ok t/tiedhash.t .......... ok t/try.t ............... ok t/unicode.t ........... ok t/url.t ............... ok t/url2.t .............. skipped: We can't agree on the right joint for + the URL plugin t/vars.t .............. ok t/varsv1.t ............ ok t/view.t .............. ok t/vmethods/hash.t ..... ok t/vmethods/list.t ..... ok t/vmethods/replace.t .. ok t/vmethods/text.t ..... ok t/while.t ............. ok t/wrap.t .............. ok t/wrapper.t ........... ok t/zz-pmv.t ............ skipped: These aren't the tests you're looking + for... move along t/zz-pod-coverage.t ... skipped: Author tests not required for install +ation t/zz-pod-kwalitee.t ... skipped: Author tests not required for install +ation t/zz-stash-xs-leak.t .. skipped: Internal test for abw, add the --abw +flag to run All tests successful. Files=89, Tests=2762, 26 wallclock secs ( 0.70 usr + 0.23 sys = 0.94 + CPU) Result: PASS C:\PROGRA~2\MICROS~1.0\VC\Bin\amd64\nmake.exe test -nologo 'No tests defined for Template::Stash::XS extension.' cd ..

With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

Replies are listed 'Best First'.
Re^2: Installing Template::Toolkit on Windows
by davies (Monsignor) on Feb 27, 2013 at 17:59 UTC

    Oh, I wasted LOTS of time doing this. :-) I think, had I known how to do it, it wouldn't have taken much longer than your 2 minutes. The two 20 minute waits (and I didn't time them accurately - that's an estimate) were for the installation of the C compiler and ?make utility. Without that the computer time would have been much shorter. But even the 40 minutes for that was only a small part of the time I wasted not knowing what to do and googling frenetically. That's why I thought it might be worth putting up the OP in case someone found themselves in the same boat.

    I'm interested to see you using wget instead of the two tools I'd heard of previously. Is this documented anywhere? Especially, is there any documentation on which to use and when? As I stated in the OP, the only ones I've ever tried are PPM and the CPAN shell (I've also used Debian's apt-get on the Pi).

    Regards,

    John Davies

      I'm interested to see you using wget instead of the two tools I'd heard of previously. Is this documented anywhere?

      wget is just a GNU download tool -- you can get a binary version for Windows from here -- but you can download the tar.gz using any other tool or method including just clicking the link on the CPAN website for whatever package you want.

      I long ago gave up on CPAN(P/plus/whatever) because they:

      • insist downloading stuff that I neither need nor want;

        Like some ancient version of nmake that hasn't worked for building perl modules since pre-5.6.1 days. If then. It is well-known that it is a pointless exercise to install that; but still the CPAN shell will insist on downloading it even when there is a working, up-to-date version already installed and available via the path! Shear bloody-mindedness.

      • Insist on installing alternative compiler & tool chain that don't work, rather than using the already installed compiler that does, simply because the broken algorithm they use to look for the compiler -- that does everything but the sensible thing of searching the path -- cannot find it.
      • Insist on trying to provide a broken emulation of *nix command line history functionality; when my shell has its own history facility -- that works -- built-in.
      • Insist on fucking with my carefully chosen shell color settings in order to try and highlight random bits of output in random colors according to no discernible pattern; and rendering the output entire unreadable in the process.

      With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
      Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
      "Science is about questioning the status quo. Questioning authority".
      In the absence of evidence, opinion is indistinguishable from prejudice.