我正在开发一个项目,需要读取文本文件,从中提取数据,然后生成报告(文本文件)。由于有很多字符串解析,我决定用Perl或Python或PHP(首选项)来完成。但我不想将源代码暴露给我的客户端。是否有任何好的编译器可以将perl / python / php脚本编译成Linux可执行文件?
我不是在寻找100%完美的,但我正在寻找至少90%完美的。完美,我的意思是编译器不需要用有限的语言特征子集编写脚本。
答案 0 :(得分:4)
对不起,这不值得花时间。对于您选择的任何语言(从您列出的语言中选择),对于任何选择提出的编译器/混淆器,我保证您可以从中获取可读的源代码(如果它是Perl,则在一小时内;如果是Python,则更长)或PHP只是因为我不太熟悉这些语言的实现,不,因为这些语言本身就更难了。)
我认为您应该更好地了解您的目标是什么以及为什么您希望为您认为先验想要扯掉您的客户工作。如果你仍想继续这样的计划,请用C或Fortran写 - 当然不是以“P”开头的任何东西。
答案 1 :(得分:2)
确实存在perl的编译器,称为perlcc。我对perl并不熟悉,但它看起来就像你正在寻找的那样。
答案 2 :(得分:2)
加密Perl代码有3个选项:
使用PAR创建PAR :: Filter :: Obfuscate或PAR :: Filter :: Crypto
使用Filter :: Crypto :: CryptFile(需要在目标操作系统上安装一些模块)
转入模块并加密到Module :: Crypt。
您也可以尝试B :: C - 它已从核心Perl发行版中删除,现在可以在CPAN上使用。
答案 3 :(得分:1)
到目前为止,我们已经听说过perlcc和PAR以及一些混淆过滤器。这些可能有用。
我对ActiveState's PerlApp which is part of their Perl Dev Kit.
运气很好将代码捆绑并隐藏它很有效。你可以免费试用它,它附带一些很好的附加功能。无论是昂贵还是便宜取决于您的观点。对我来说,这很便宜。使用PAR或使用perlcc搞乱代码隐藏工作和可靠的时间成本很容易低于软件包的价格。 YMMV。
答案 4 :(得分:0)
对于Python您可以调用代码并将* .pyc文件提供给客户端。
答案 5 :(得分:0)
对于linux,可执行文件具有+ x设置,因此不需要编译脚本。要隐藏源代码,您可以使用混淆器。这使您的源代码不可读。
答案 6 :(得分:0)
我从来没有使用过这个,所以我不知道设置有多容易,但你可以使用HipHop PHP将你的PHP脚本转换成C ++代码并编译它们。 (假设你选择用PHP编写它们)
答案 7 :(得分:0)