gpt4 book ai didi

perl - 我可以在我的主目录中安装预先配置的 Perl 二进制包吗?

转载 作者:行者123 更新时间:2023-12-04 18:00:02 25 4
gpt4 key购买 nike

我想在我的主目录中设置 Perl 5.10 除了当前在/usr/local 中的机器上的古老 Perl 之外。我不是这台机器的 super 用户。

我找到了需求 5.10 HPUX perl二进制包,它似乎可以工作,但出于某种原因,它似乎假设它在/usr/local 中运行(如@INC 错误消息所证明)。除了 PERLLIB 之外,还有其他一些变量吗,比如 PERLHOME 或者我需要设置的东西,这样 Perl 就不会在/usr/local 目录中查找任何东西?

附注我看到了 advice online在 ./Configure 步骤中编译和设置目录,但我很难在这个旧机器上编译东西,所以我更喜欢使用预编译的 Perl,因为它似乎主要工作。

更新——Leon 回答了这个问题,所以基本上不可能从你的主目录正确运行 perl 二进制文件,除非它是在考虑到这一点的情况下编译的

最佳答案

你不会喜欢这个答案。

Perl 将@INC 作为字符串存储在其二进制文件中。之前有userelocatableinc重新定位 Perl 的技术是对二进制文件进行搜索和替换,并在 Config.pm 中更改它们。这就是 ActiveState 提供可重定位 Perl 的方式。

字符串必须保持与以前相同的大小,用空字节填充任何额外的空间。 ActiveState 会通过为 Perl 配置一个前缀来解决这个问题,比如“/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxTMPPATHxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”之类的前缀。它还使得在二进制文件中查找非常明确。你没有这样的运气,所以只有当当前路径比你想要替换它们的路径短时它才会起作用。

但这太复杂了。只需使用 HP/UX 的源代码为自己编译 Perl,或者只是从 perl.org 获取常规源代码。 Perl 有专门的 HP/UX 开发人员,所以应该一切顺利。

关于perl - 我可以在我的主目录中安装预先配置的 Perl 二进制包吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/588559/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com