【问题标题】:dmake not found when installing Perl module using CPAN使用 CPAN 安装 Perl 模块时找不到 dmake
【发布时间】:2020-01-25 23:48:03
【问题描述】:

我从 ActiveState 安装了 Perl。没有扩展的普通版本。视窗 10。 "这是为 MSWin32-x64-multi-thread 构建的 perl 5,版本 28,subversion 1 (v5.28.1)"

我需要使用的预先存在的 perl 脚本访问 PostScript::Simple,因此我需要将其添加到我的安装中。

据说,正确的做法是打开cpan并运行命令“install PostScript::Simple”。

但是,它最终会因 dmake 错误而失败。我已经尝试过 cpan install dmake 并且似乎正在尝试这样做,但这也失败了。

Loading internal logger. Log::Log4perl recommended for better logging
Reading 'H:\.cpan\Metadata'
  Database was generated on Wed, 25 Sep 2019 15:55:37 GMT
Running install for module 'PostScript::Simple'
CPAN: Digest::SHA loaded ok (v6.01)
CPAN: Compress::Zlib loaded ok (v2.074)
Checksum for H:\.cpan\sources\authors\id\M\MC\MCNEWTON\PostScript-Simple-0.09.tar.gz ok
CPAN: Archive::Tar loaded ok (v2.30)
'YAML' not installed, will not store persistent state
CPAN: CPAN::Meta::Requirements loaded ok (v2.140)
CPAN: Parse::CPAN::Meta loaded ok (v2.150010)
CPAN: CPAN::Meta loaded ok (v2.150010)
CPAN: Module::CoreList loaded ok (v5.20181129_28)
Configuring M/MC/MCNEWTON/PostScript-Simple-0.09.tar.gz with Makefile.PL
Checking if your kit is complete...
Looks good
Generating a dmake-style Makefile
Writing Makefile for PostScript::Simple
Writing MYMETA.yml and MYMETA.json
  MCNEWTON/PostScript-Simple-0.09.tar.gz
  C:\Perl64\bin\perl.exe Makefile.PL -- OK
Running make for M/MC/MCNEWTON/PostScript-Simple-0.09.tar.gz
**'dmake' is not recognized as an internal or external command,**
operable program or batch file.
  MCNEWTON/PostScript-Simple-0.09.tar.gz
  dmake -- NOT OK

【问题讨论】:

  • 发布此问题后,我还进入 cpan 并执行了“安装 YAML”(在 PostScript::Simple 安装尝试期间注明未安装)。一路上,它也遇到了 dmake 问题(同样的错误)。
  • @stevieb - 我在我的系统上安装了 mingw 并尝试将 cpan 指向它的 make exe:cpan[2]> o conf make c:\\MinGW\\bin\\mingw32-make.exe make [c:\MinGW\bin\mingw32-make.exe] Please use 'o conf commit' to make the config permanent! 之后:cpan[4]> o conf make make [c:\MinGW\bin\mingw32-make.exe] Type 'o conf' to view all configuration items 但是,安装 PostScript::Simple 仍然失败,因为它似乎没有喜欢mingw make exe。

标签: perl cpan dmake


【解决方案1】:

运行cpan,并执行以下命令:

o conf make

这是我的一个 Windows 系统的示例:

cpan> o conf make
    make               [C:\STRAWB~1\c\bin\gmake.exe]

检查 make 选项中列出的文件是否在 cpan 认为的系统上可用(该条目可能只是缺少二进制文件的路径信息)。

如果不是,要么找到它,要么寻找另一个make程序(gmake.exe很常见),然后用cpan下的配置命令输入路径和make程序的文件名:

cpan> o conf make C:\\Strawberry\\c\\bin\\gmake.exe
    make               [C:\Strawb~1\c\bin\gmake.exe]
    commit: wrote 'C:\Strawberry\perl\lib/CPAN/Config.pm'

【讨论】:

  • 问题是关于 ActivePerl,而不是 Strawberry。
  • @daxim 不管是ActivePerl还是Strawberry,排错步骤会不会不一样?
猜你喜欢
  • 2017-09-17
  • 2013-06-30
  • 2016-07-11
  • 2020-07-02
  • 2020-05-07
  • 2011-06-15
  • 2014-02-18
  • 2016-04-14
  • 2020-11-07
相关资源
最近更新 更多