假设我使用module-starter创建了一个目录,然后编写了几个额外的模块和测试。
然后,make test将在lib/中的所有模块上运行t/中的所有测试,但是make dist只会将MANIFEST中提到的文件打包到tar.gz中。
所以我最近因为运行make test && make dist而被烧坏了,而且还得到了一个坏包。
我的问题是:我是不是遗漏了什么,或者这在MakeMaker中可以被报告为一个小错误?( Makefile.PL似乎是依赖它的)。
发布于 2011-03-19 15:29:26
您可以使用make disttest,它将从清单(等效于make distdir)创建一个分发目录,并在其中运行make test。这保证了您所运行的文件与将要发送的文件相同。
我也重建我的清单作为发布的一部分,这需要保持您的MANIFEST.SKIP最新。
总之,我的基本发行脚本是:
perl Makefile.PL
make manifest
make disttest
make dist发布于 2011-03-18 19:16:37
在发布包之前运行make distcheck。这将警告您MANIFEST中可能缺少的任何内容。
一些模块在构建过程中生成文件(包括在lib/下),因此MANIFEST中缺少的文件不一定会导致make dist失败。
https://stackoverflow.com/questions/5356713
复制相似问题