问题标签 [module-build]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 如何确保使用 Module::Build 安装没有扩展名的文件?
我正在将继承的软件集合转换为基于Module::Build的分发。
lib
除了文件之外,这些目录还包含.pm
模块所需的某些外部文件。.pm
使用Module::Build
'sadd_build_element
方法很容易确保将具有扩展名的文件与文件一起复制。
但是我对如何处理没有扩展名的文件感到困惑。如何确保.pm
在安装期间这些文件也与文件一起复制?有没有办法告诉Module::Build
复制下的所有内容lib
?
windows - 如何将 Module::Build 配置为不将文件安装为只读?
我遇到了一个场景,我正在构建一个 Perl 模块作为 Windows 机器上另一个构建系统的一部分。我使用--install_base
Module::Build 的选项来指定一个临时目录来放置模块文件,直到整个构建系统可以使用它们。不幸的是,如果它所依赖的任何文件是只读的,那么其他构建系统就会出现问题 - 它会在重建之前尝试删除任何生成的文件,并且它无法清理任何只读文件(它会尝试删除它,并且它是只读的,这会产生错误。)默认情况下,Module::Build
安装它的库时启用只读位。
一种选择是在构建过程中迈出新的一步,从已安装的文件中删除只读位,但由于构建工具的性质需要第二个临时目录......呃。
当文件安装到 --install_base 目录时,是否可以将Module::Build
基于安装程序配置为不启用该只读位?如果是这样,怎么做?
perl - 什么是等同于 ExtUils::MakeMaker INST_SCRIPT 的 Module::Build?
我想将项目从使用ExtUtils::MakeMaker转换为Module::Build。由于 Makefile.PL 大部分是默认的,并且Module::Build::Convert对我不起作用(见下文),我想手动转换它,但没有找到相当于 INST_SCRIPT 将可执行文件放在 Perl 的 bin/ 目录中。
我的 WriteMakefile 看起来像这样。
我尝试使用Module::Build::Convert但 make2build 抛出我无法解决的错误:
perl 版本:
perl - Module::文件中的构建和值替换
我开始使用 Module::Build。在构建过程中,我需要在某些文件中进行值替换——根据安装位置等更改路径。
在 Module::Build 文档中找不到任何内容。我知道我可以扩展 Module::Build 来做几乎任何事情,但是有一些标准的方法可以做到这一点吗?
perl - 使用 Module::Build 的 share_dir 选项时,如何确保删除旧的共享内容?
当用户安装我的 Perl 模块时,我使用Module::Build
'sshare_dir
选项安装只读补充内容。
如何确保在安装新版本的模块时删除以前版本的模块添加的旧内容?
在此先感谢您的帮助。
perl - 模块::构建构建问题
使用 Module::build
.
我不知道如何重用它。帮我解决这个问题(我再次在blib->lib
目录中得到了相同的代码。
c - How can I have Module::Build compile and link my small C program?
I have a simple C source file in a src
directory in my project. My Build.PL
contains the following lines:
However, all this does is compile it to a .o
file in the src
directory corresponding to the C file. What I'd really like is to have it compiled and linked to form an executable, then put in my bin
directory.
Is this possible and advisable with Module::Build
?
perl - 如何将默认 Module::Build / Test::More 目录从“lib”更改为其他目录?
使用这篇关于 Perl 单元测试和代码覆盖率的帖子中的目录和文件架构(顺便说一句,这非常有帮助),我将运行单元测试和代码覆盖率的文件复制到一个新的“lib”目录中,它的工作方式类似于魅力!
但是,我需要该模块在现有的“脚本”目录中查找..
我已经梳理了CPAN上的 Module::Build 文档,但仍然出现Can't find file lib/processBuildSubs.pm错误
这是我到目前为止所拥有的......
更新!
也刚试过这个..
我猜有一些进展,它似乎正在寻找lib/scripts/..,但仍然不是我需要的..
更新!
有点像黑客工作,但现在它对我有用..
我运行这个脚本来更改目录名称,运行测试/覆盖并改回目录名称......有人有更好的想法吗?
perl - Devel::Cover 合并 Perl 脚本和模块的覆盖率数据
我在合并数据以覆盖 Perl 脚本和模块时遇到问题。单独运行 Devel::Cover 工作得很好,但是当我尝试合并数据时,我丢失的只是 Perl 脚本而不是模块的统计信息。
让我解释..
我有一个看起来像这样的目录树..
在根 Code_Coverage_Test 目录中,我有 Build.pl 文件,该文件为模块和脚本构建测试,该脚本启动另外两个脚本,为我自动执行一些命令。
./Build.pl
./startTests.sh
在 lib 目录中,我有我试图在其上运行代码覆盖率的文件。
lib/testPLCoverage.pl
库/testPMCoverage.pm
在 t 目录中,我有模块的 .t 测试文件和 2 个为我启动测试的脚本。这两个脚本都由根目录中的 startTests.sh 调用
t/testPMCoverage.t
t/doPLtest.sh
t/doPMtest.sh
我遇到的问题是,当 doPLtests.sh 脚本运行时,我得到了覆盖率数据,没问题..
但是,当 doPMtest.sh 脚本完成并且 startTests.sh 脚本启动 Build testcover 命令时,我会丢失该数据并收到这些消息...
..不知何故我丢失了数据
如何结合 Perl 模块和 Perl 脚本测试以在一个文件中获得有效的代码覆盖率?
perl - 如何在没有 t/*.t 结构的情况下运行 perl 测试(t/sub_folder/*.t)
我尝试通过 Makefile.PL 或 Build.PL 收集我的代码并管理我的 perl 项目,一切顺利,我得到了 TAP 格式的正确测试结果。但是我想在 t/ 文件夹下创建一些子文件夹来收集不同的测试文件,然后我发现当我运行时make test
,./Build test
或者prove
,他们说no tests
。有没有办法解决这个问题?