我想在Windows 10(WSL)的Linux环境下使用Perl脚本。我已经启用了WSL,安装了编译器(gcc
和make
),执行了sudo apt-get install build-essential
。 Perl正在工作,我可以运行简单的脚本。我尝试安装perl模块时出现问题。例如,我试图通过运行perl -MCPAN -e'install "LWP"'
来添加LWP
。它提供了很多错误/警告消息,从Warning: the following files are missing in your kit:
开始。完整的输出太大而无法粘贴在这里,所以我必须把它放在其他地方:http://pastebin.com/RRRedwbG。简而言之,无论是什么包,所有的.pm和.t文件都被认为是不存在的。在[Windows子系统for Linux]中安装perl模块
4
A
回答
4
的溶液中发现的在github.com/Microsoft/BashOnWindows/issues/186:
1.运行sudo apt-get install liblocal-lib-perl cpanminus build-essential
2.编辑/usr/lib/perl/5.18.2/Config.pm
(围绕线94)以具有dont_use_nlink => 1
3. eval "$(perl -I$HOME/perl5/lib/perl5 -Mlocal::lib)"
5
在UNIX文件系统中,目录的.
是硬链接自己,目录的..
是一个硬链接到其父目录。所以当你stat
一个目录时,stat
返回的链接数将至少为1 (name) + 1 (.) + $num_sub_dirs (..)
。
$ ls -ld .
drwx------ 5 ikegami ikegami 46 Dec 16 12:03 . # 5 = Could have up to three subdirs
$ ls -l .
total 0
drwx------ 2 ikegami ikegami 10 Dec 16 12:03 a # 2 = No subdirs
drwx------ 3 ikegami ikegami 24 Dec 16 12:03 b # 3 = Could have up to one subdir
drwx------ 2 ikegami ikegami 10 Dec 16 12:03 c # 2 = No subdirs
File :: Find在可能的情况下依赖于该信息进行优化。
Perl和File :: Find知道FAT和NTFS文件系统并非如此,所以在Windows上禁用了优化。但是,VSL看起来像一个Linux系统,所以他们错误地认为他们正在处理一个unix文件系统。
最好的解决方法是编辑通过以下命令的输出文件名为:
perl -MConfig -e'CORE::say $INC{"Config.pm"}'
变化
dont_use_nlink => undef
到
dont_use_nlink => 1
可以使用验证更改
$ perl -V:dont_use_nlink
dont_use_nlink='1';
此答案是基于this bug report。
相关问题
- 1. 在Linux的Windows子系统中安装Windows共享
- 2. 安装CPAN模块而不搞乱系统Perl安装
- 3. 安装CPAN模块而不搞乱系统Perl安装
- 4. 无法在Linux上安装Perl模块
- 5. 安装perl模块错误
- 6. 如何在Windows上安装perl模块?
- 7. 在Windows上安装Sqitch Perl CPAN模块
- 8. 在XAMPP for Windows上安装CPAN上的perl模块
- 9. 在Android操作系统上安装Perl模块
- 10. 如何在Windows 10上的Linux子系统上安装RVM
- 11. 如何在Windows上安装pytorch Linux子系统
- 12. 在Linux操作系统上安装ibm_db模块问题
- 13. 如何在Windows中安装Mason for Perl?
- 14. Perl模块安装?
- 15. 安装Class :: Inspector Perl模块
- 16. 如何使用系统命令安装cpan模块 - perl
- 17. Ubuntu在哪里安装Perl模块?
- 18. Linux的Windows子系统:安装MSSQL服务器时出错
- 19. 重新安装或刷新Windows子系统Linux上的文件
- 20. 如何在Linux系统中安装tcl
- 21. perl cpan模块安装
- 22. 在Ubuntu中显示matplotlib图(Linux子系统的Windows子系统)
- 23. 为(非系统)Python安装rpm模块
- 24. Perl DBD :: Oracle模块安装
- 25. oracle perl和perl系统并排安装
- 26. 无法在Windows 64位上安装perl模块Net :: SSH :: Perl
- 27. 如何在Linux中安装py2exe模块
- 28. 在Linux上构建Windows Perl模块
- 29. PERL 5.8.4安装DBI模块
- 30. 的Perl模块安装
可能是这个问题:https://github.com/Microsoft/BashOnWindows/issues/186 – melpomene
是的!我刚刚发现它也是 –
@VasilyA顺便说一下,你可以做'cpan LWP'。不需要搞乱'perl -MCPAN -e ...'。 – melpomene