繁体   English   中英

当我运行perl raku命令行程序时,lib目录出现在当前工作目录中 - 我该如何防止这种情况?

[英]When I run a perl raku command line program a lib directory appears in the current working directory - how do I prevent this?

当我运行perl raku命令行程序时,lib目录(和precomp文件)出现在当前工作目录中 - 如何防止/避免这种情况?

你为什么想这么做? 它们实际上是预编译文件,稍后再次运行时将使用这些文件。 您可以通过将.precomp添加到.gitignore文件来阻止将它们添加到存储库,但它们是运行Perl 6所固有的有用文件。如本答案所示 ,这可能是由于. 包含在PERL6LIB变量中。 您可以从那里删除它以防止在当前目录中发生这种情况。 但它仍然可能发生在其他地方。

Rakudo Perl 6使用一系列存储库来加载模块。 如果您加载模块并且它不在顶层存储库中,它将查看下一个模块,依此类推。

它还将预编译模块,以便在第二次使用时加快加载速度。

通常,如果您安装模块,它将使用一次,使其precomp文件将放置在安装它的存储库中。
如果你去使用它不在那里,将创建一个新的。
由于它不一定知道它所依赖的其他模块,因此该precomp文件始终位于存储库链的头部。

所以你显然有一个没有precomp的模块,并且你的存储库链顶部有./lib

它可以是PERL6LIB-I命令行参数,或者use lib './lib'; 代码中的一行。

您可以尝试重新安装模块,看看是否会阻止它发生。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM