【发布时间】:2016-04-11 03:27:18
【问题描述】:
我有一个使用 OpenCV 的 python 程序。程序现在按预期运行。现在我想使用 Cython 将我的 python 代码编译为 C 代码。我这样做而不是用 C 重写整个程序,因为我仍然希望其他 python 程序能够import my_program。
我以前从未使用过 Cython,但刚刚阅读了几篇关于它的博客文章。有人可以告诉我我应该准备什么以及这将是一项艰巨的任务......我目前的python程序是~200 LoC。
【问题讨论】:
-
使用 200 行脚本,我会继续尝试,看看我遇到了什么问题(如果有的话)。不说这个问题的答案通常没有用。
-
@Anthony 你希望通过这样做实现什么?因为您可能可以使用 Cython 编译您的 Python 代码,而(几乎?)没有对其进行任何更改,但您不会真正获得太多。
-
@DavidW 我这样做的唯一原因是混淆代码,这是 python 不允许的。我知道有人仍然可以对其进行逆向工程,但我的目标只是让他们更难对其进行逆向工程。我从这个答案中得到了这个想法stackoverflow.com/a/7347168/44286
-
@Anthony 在这种情况下,您的代码可能会按原样工作(尽管确实存在不兼容性,但您可能必须非常努力地找到不兼容性)。我可能(可能)看看我是否可以在某个时候回答一些更明显的不兼容问题。
-
@DavidW 在进行更多研究时遇到了liftoff.github.io/pyminifier。你用过吗?在我的唯一目的是使逆向工程代码“更难”但仍然能够允许用户像任何其他模块一样使用
import my_code的情况下,这似乎很有希望。