如何将 c、c++ 和 python 代码编译为“Released/Final”版本? [关闭]

Posted

技术标签:

【中文标题】如何将 c、c++ 和 python 代码编译为“Released/Final”版本? [关闭]【英文标题】:How to compile c, c++ and python code as “Released/Final” version? [closed] 【发布时间】:2014-02-24 09:52:47 【问题描述】:

我想知道是否有办法编译 C、C++ 和 Python 代码以便无法在 Linux 上对其进行逆向工程?

我听说在 Windows 上有一些方法可以做到这一点,但我在 Linux 上工作。

我想安全地编译我的代码,无论是发布版本还是最终版本。

更新

至少我想让普通用户很难拆机,

我在 C 中使用 GCC,在 C++ 中使用 GPP,如果您向我介绍 Python 的最佳编译器,我将不胜感激。

【问题讨论】:

这取决于您使用的编译器。 gcc 用于 c 和 c++,还介绍了我最好的一个用于 python...谢谢 您的问题刚刚被删除。请修改您的问题,稍后再回来。 试试这个en.wikipedia.org/wiki/Debugging#Anti-debugging 您可以使用长随机密码加密可执行文件,并在用户运行时即时解密,加上一些反调试技术,我认为这可以使您的代码非常安全。不要问我这些东西是怎么做的,我不知道。 【参考方案1】:

我想知道是否有办法编译 c、c++ 和 python 代码以便无法在 Linux 上对其进行逆向工程?

您总是可以混淆代码,但要知道:无法阻止专门的逆向工程师。正如其他人曾经在该网站上所说:您无法从技术上保护您的代码,只能从法律上保护。

我想安全地编译我的 c、c++ 和 python 代码...作为已发布或最终版本...

好吧,就 python 而言,您始终可以将软件作为由 py2exe 或 freeze 等 exe 打包程序创建的可执行文件发布。 Refer to this question.

如果您介绍我最好的 Python 编译器,我将不胜感激

在 Python 世界中,您谈论的不是编译器,而是特定的实现。大多数人使用参考cpython 实现。还有替代品如pypy或jython, 但它们不是专用的编译器,而是成熟的虚拟机。

【讨论】:

gcc 中是否有任何用于 c 和 c++ 的开关或一些技巧?我确实没有找到搜索机器人 @MortezaLSC 好吧,您可能想使用类似-O2 的东西。请参考to this site 了解 gcc 中所有可用的优化。 非常感谢,至少我想让普通用户很难拆机, @MortezaLSC 如果您发现这回答了您的问题,请考虑将其标记为已接受的答案,以便问题关闭。 好的,我想做一些搜索,让其他人帮忙...那我肯定会接受 :)

以上是关于如何将 c、c++ 和 python 代码编译为“Released/Final”版本? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何将javascript代码编译为c++或java

C代码编译为C++,但不是C [重复]

如何将ocaml代码编译为供C ++使用的本机

使用 emcc 将 C++ 代码编译为 WASM 的问题

我可以将AS3代码或Flex项目交叉编译为本机C ++吗?

如何将 .hex 文件反编译为 Arduino 的 C++?