2011-11-16 203 views
0

我正在尝试安装PP以将Perl脚本编译为EXE文件,并且我正在使用64位Windows   7和32位ActiveState Perl。输入后CPAN Perl模块安装失败

cpanm pp 

我的命令提示符下返回

--> Working on pp 
Fetching http://search.cpan.org/CPAN/authors/id/R/RS/RSCHUPP/P 
r.gz ... OK 
Configuring PAR-Packer-1.010 ... OK 
Building and testing PAR-Packer-1.010 ... FAIL 
! Installing pp failed. See \.cpanm\build.log for details. 

凡.cpanm \ build.log写着:

cpanm (App::cpanminus) 1.5004 on perl 5.014002 built for MSWin32-x86-multi-thread 
Work directory is /.cpanm/work/1321468976.3220 
You have make nmake.exe 
You have LWP 6.02 
Falling back to Archive::Tar 1.78 
Searching pp on cpanmetadb ... 
--> Working on pp 
Fetching http://search.cpan.org/CPAN/authors/id/R/RS/RSCHUPP/PAR-Packer-1.010.tar.gz 
-> OK 
Unpacking PAR-Packer-1.010.tar.gz 
Entering PAR-Packer-1.010 
Checking configure dependencies from META.yml 
Checking if you have ExtUtils::Embed 0 ... Yes (1.3001) 
Checking if you have ExtUtils::MakeMaker 6.42 ... Yes (6.57_05) 
Configuring PAR-Packer-1.010 
Running Makefile.PL 
Checking if your kit is complete... 
Warning: the following files are missing in your kit: 
    myldr/boot 
    myldr/boot.o 
    myldr/parl 
    myldr/pm_to_blib 
    parpackerresource.zip 
Please inform the author. 
Prototype mismatch: sub main::prompt: none vs ($;$) at C:/Perl/lib/ExtUtils/MakeMaker.pm line 218 
Writing Makefile for par.exe 
Writing MYMETA.yml 
Writing Makefile for PAR::Packer 
Writing MYMETA.yml 
-> OK 
Checking dependencies from MYMETA.yml ... 
Checking if you have ExtUtils::Embed 0 ... Yes (1.3001) 
Checking if you have ExtUtils::MakeMaker 6.42 ... Yes (6.57_05) 
Checking if you have Compress::Zlib 1.16 ... Yes (2.037) 
Checking if you have Archive::Zip 1 ... Yes (1.30) 
Checking if you have PAR 1.000 ... Yes (1.002) 
Checking if you have IO::Compress::Gzip 0 ... Yes (2.037) 
Checking if you have Getopt::ArgvFile 1.07 ... Yes (1.11) 
Checking if you have PAR::Dist 0.22 ... Yes (0.48) 
Checking if you have Win32::Process 0 ... Yes (0.14) 
Checking if you have File::Temp 0.05 ... Yes (0.22) 
Checking if you have Module::ScanDeps 1.01 ... Yes (1.05) 
Checking if you have Parse::Binary 0.04 ... Yes (0.11) 
Checking if you have Win32::Exe 0.14 ... Yes (0.17) 
Building and testing PAR-Packer-1.010 

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01 
Copyright (C) Microsoft Corporation. All rights reserved. 

    C:\Perl\bin\perl.exe "-Minc::Module::Install" -e "extract_par(q(PAR-Packer-1.010-MSWin32-x86-multi-thread-5.14.2.par))" 
cp lib/App/Packer/PAR.pm blib\lib\App\Packer\PAR.pm 
cp lib/PAR/Packer.pm blib\lib\PAR\Packer.pm 
cp lib/PAR/Filter/Obfuscate.pm blib\lib\PAR\Filter\Obfuscate.pm 
cp lib/PAR/Filter/PodStrip.pm blib\lib\PAR\Filter\PodStrip.pm 
cp lib/PAR/StrippedPARL/Base.pm blib\lib\PAR\StrippedPARL\Base.pm 
cp lib/PAR/Filter.pm blib\lib\PAR\Filter.pm 
cp lib/PAR/Filter/PatchContent.pm blib\lib\PAR\Filter\PatchContent.pm 
cp lib/PAR/Filter/Bytecode.pm blib\lib\PAR\Filter\Bytecode.pm 
cp lib/pp.pm blib\lib\pp.pm 
cp lib/PAR/Filter/Bleach.pm blib\lib\PAR\Filter\Bleach.pm 
    C:\PROGRA~2\MICROS~1.0\VC\BIN\nmake.exe -f Makefile all -nologo 
    C:\Perl\bin\perl.exe file2c.pl -s ..\script\par.pl my_par_pl.c load_my_par_pl 
    C:\Perl\bin\perl.exe sha1.c.PL 
    cl -c -Zm1000 -nologo -GF -W3 -MD -Zi -DNDEBUG -O1 -DWIN32 -D_CONSOLE -DNO_STRICT -DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -D_USE_32BIT_TIME_T -I"C:\Perl\lib\CORE" -DPARL_EXE=\"parl.exe\" -MD -Zi -DNDEBUG -O1 main.c 
main.c 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\env.c(68) : warning C4996: 'strnicmp': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strnicmp. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(248) : see declaration of 'strnicmp' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(104) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(138) : warning C4996: 'strtok': This function or variable may be unsafe. Consider using strtok_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(197) : see declaration of 'strtok' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(143) : warning C4996: 'strtok': This function or variable may be unsafe. Consider using strtok_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(197) : see declaration of 'strtok' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(159) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(163) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(165) : warning C4996: 'strtok': This function or variable may be unsafe. Consider using strtok_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(197) : see declaration of 'strtok' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(193) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(206) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(209) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\utils.c(221) : warning C4996: 'strncpy': This function or variable may be unsafe. Consider using strncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(188) : see declaration of 'strncpy' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(53) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(89) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(109) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(129) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(137) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(149) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(166) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(172) : warning C4996: 'strdup': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _strdup. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\string.h(238) : see declaration of 'strdup' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(211) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(225) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(232) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(245) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(258) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(288) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(295) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
c:\.cpanm\work\1321468976.3220\par-packer-1.010\myldr\mktmpdir.c(298) : warning C4996: 'sprintf': This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. 
     C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\stdio.h(371) : see declaration of 'sprintf' 
    link main.obj win32.obj -release -nologo -nodefaultlib -debug -opt:ref,icf -libpath:"C:\Perl\lib\CORE" -machine:x86 C:\Perl\lib\CORE\perl514.lib "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\LIB\oldnames.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\kernel32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\user32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\gdi32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\winspool.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\comdlg32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\advapi32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\shell32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\ole32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\oleaut32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\netapi32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\uuid.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\ws2_32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\mpr.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\winmm.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\version.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\odbc32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\odbccp32.lib" "C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\lib\comctl32.lib" "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\LIB\msvcrt.lib" -out:par.exe 
    mt -nologo -manifest par.exe.manifest -outputresource:par.exe;1 

par.exe.manifest : general error c1010070: Failed to load and parse the manifest. The system cannot find the file specified. 

NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\mt.EXE"' : return code '0x1f' 
Stop. 
NMAKE : fatal error U1077: 'C:\PROGRA~2\MICROS~1.0\VC\BIN\nmake.exe' : return code '0x2' 

我似乎无法弄清楚了我的生活是什么实际的问题是。

我知道这有点多,但我以前没有这样做过,并且任何关于我的错误可能在哪里的帮助或指针都将不胜感激。

+0

它看起来好像你正在使用ActivePerl。你有没有考虑过使用Strawberry Perl呢? – 2011-11-16 20:22:09

+0

[如何安装pp(PAR Packager)?](http://stackoverflow.com/questions/8055063/how-to-install-pp-par-packager) –

回答

4

喔孩子......

它看起来像的activeperl是使用VisualStudio中编译,而不是MinGW的。清理起来可能有点麻烦。

幸运的是,您可以使用Perl Package Manager为您安装Par-Packer。 ActiveState已经为您编译它的麻烦了。

只需在命令提示符下输入ppm Par-Packer即可。或者,使用Perl Package Manager GUI。它位于开始菜单 - >程序中的ActiveState菜单项下。

0

注册表this message,您应该制作文件MANIFEST的两个副本,并将其命名为par.exe.manifeststatic.exe.manifest。 我试过了,取得了成功。