【问题标题】:Making perl modules executable [closed]使perl模块可执行[关闭]
【发布时间】:2020-03-03 10:51:58
【问题描述】:

我是 Perl 的新手。我创建了一个 Perl 模块(.pm)。我正在尝试使其可执行。我想知道是否可以使 Perl 模块可执行或我出错了?

提前致谢。

【问题讨论】:

  • 你想达到什么目的?或者,换句话说:你为什么要把一个 Perl 模块变成一个“二进制文件”(不管那是什么意思)?
  • @Dada 我想让 perl 文件表现得像执行 c 文件后创建的二进制文件
  • 将 Perl 代码编译成机器指令并不是任何人的目标。 the problem are you actually trying to solve 是什么?
  • 所以阅读 cmets 到答案,看来实际问题是“分发 perl 代码而不允许收件人能够阅读代码”

标签: perl executable


【解决方案1】:

您是在问如何将 Perl 代码编译成机器指令?没有这样的工具。当 Perl 被编译时,它被编译成需要解释器来评估的高级操作码。

【讨论】:

  • 我想让 perl 文件表现得像执行 c 文件后创建的二进制文件
  • 一个不执行 C 文件。 /// “二进制文件”没有意义。它只是一个包罗万象的术语,用于人类不可读的文件。 /// “表现得像一个二进制文件”是没有意义的。文件不做任何事情,所以没有什么像文件一样。 /// 我仍然认为你在问如何将 Perl 代码编译成机器指令。
  • 没错,我想让它不可读。 perl 文件可以吗?
  • 制作人类无法读取的文件非常容易。你可以压缩它、加密它、用垃圾替换它等等。我再次问:你真正想要解决的问题是什么?
  • 没有不可逆的方法来混淆 Perl 源代码同时仍然允许它工作,因为 Perl 解释器最终需要原始 Perl 源代码。因此,无论您做什么,Perl 解释器都必须是可逆的,因此其他任何人都可以逆转(除非使用共享密钥加密)。
猜你喜欢
  • 2020-07-14
  • 2015-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-29
相关资源
最近更新 更多