ActivePerl CPAN 和 .tshrc
ActivePerl CPAN and .tshrc
我在 Mac OS X 上安装了 ActivePerl (5.24.3.1),导致 'havoc' 出现 CPAN 安装。在 "sites/lib/" 中,新安装与 "core CPAN.pms" 分开。
无论如何,我已经在我的目录 .cshrc 中添加了以下内容
setenv PERL5LIB PERL5LIB:/usr/local/ActivePerl-5.24/lib:/usr/local/ActivePerl-5.24/site/lib
我编的,但似乎一切正常。它是有效代码吗?
该行正确地附加到 tcsh
中的环境变量 PERL5LIB
。
来自 man tcsh
我的系统
setenv [name [value]]
Without arguments, prints the names and values of all environment variables. Given name, sets the environment variable name to value or, without value, to the null string.
tcsh
中的环境变量可以设置为表示列表的值,通过用冒号分隔条目 (:
)。因此说 PERL5LIB:...
是一种附加到现有值 PERL5LIB
的方法。
如in perlrun所述,PERL5LIB
是
A list of directories in which to look for Perl library files before looking in the standard library and the current directory. Any architecture-specific and version-specific directories, such as version/archname/, version/, or archname/ under the specified locations are automatically included if they exist, with this lookup done at interpreter startup time.
但请注意,不再在“当前目录”中搜索库,这是现代 Perl 版本中的安全增强功能。
因此您的行将 /usr/local/ActivePerl
位置添加到在您的 Perl 版本中设置的默认路径。
我不知道 ActivePerl 如何以及为什么在 Mac OS X 上“对 CPAN 安装造成严重破坏”(?)。我想你安装了另一个 Perl(通过你提到“CPAN installantions”),但我很困惑你现在使用的是哪个,一旦 ActiveState 存在(以及?) .
总而言之,@INC 命令行查询的输出清楚地表明 ActiveStates Perl 自动查看 CPAN 库,因此 .cshrc 中的 "setenv PERL5LIB PERL5LIB:....:...."
将其复制为 @ikegami确定。
Perl 的最新稳定 ActiveStates 实现工作正常,主要问题是 'sites/lib' 目录的权限(OS X 安装不是 Linux)。
但是,我的编码应用程序(BBEdit,版本 12.6.1)确实需要在 "run" 函数运行之前在 .cshrc 中设置 PERL5LIB。所以 @zdim 响应在上下文中很有用。感谢两位回复者,感激不尽。
我在 Mac OS X 上安装了 ActivePerl (5.24.3.1),导致 'havoc' 出现 CPAN 安装。在 "sites/lib/" 中,新安装与 "core CPAN.pms" 分开。
无论如何,我已经在我的目录 .cshrc 中添加了以下内容
setenv PERL5LIB PERL5LIB:/usr/local/ActivePerl-5.24/lib:/usr/local/ActivePerl-5.24/site/lib
我编的,但似乎一切正常。它是有效代码吗?
该行正确地附加到 tcsh
中的环境变量 PERL5LIB
。
来自 man tcsh
我的系统
setenv [name [value]]
Without arguments, prints the names and values of all environment variables. Given name, sets the environment variable name to value or, without value, to the null string.
tcsh
中的环境变量可以设置为表示列表的值,通过用冒号分隔条目 (:
)。因此说 PERL5LIB:...
是一种附加到现有值 PERL5LIB
的方法。
如in perlrun所述,PERL5LIB
是
A list of directories in which to look for Perl library files before looking in the standard library and the current directory. Any architecture-specific and version-specific directories, such as version/archname/, version/, or archname/ under the specified locations are automatically included if they exist, with this lookup done at interpreter startup time.
但请注意,不再在“当前目录”中搜索库,这是现代 Perl 版本中的安全增强功能。
因此您的行将 /usr/local/ActivePerl
位置添加到在您的 Perl 版本中设置的默认路径。
我不知道 ActivePerl 如何以及为什么在 Mac OS X 上“对 CPAN 安装造成严重破坏”(?)。我想你安装了另一个 Perl(通过你提到“CPAN installantions”),但我很困惑你现在使用的是哪个,一旦 ActiveState 存在(以及?) .
总而言之,@INC 命令行查询的输出清楚地表明 ActiveStates Perl 自动查看 CPAN 库,因此 .cshrc 中的 "setenv PERL5LIB PERL5LIB:....:...."
将其复制为 @ikegami确定。
Perl 的最新稳定 ActiveStates 实现工作正常,主要问题是 'sites/lib' 目录的权限(OS X 安装不是 Linux)。
但是,我的编码应用程序(BBEdit,版本 12.6.1)确实需要在 "run" 函数运行之前在 .cshrc 中设置 PERL5LIB。所以 @zdim 响应在上下文中很有用。感谢两位回复者,感激不尽。