当前位置: 首页 > 编程笔记 >

Python编译为二进制so可执行文件实例

弘兴言
2023-03-14
本文向大家介绍Python编译为二进制so可执行文件实例,包括了Python编译为二进制so可执行文件实例的使用技巧和注意事项,需要的朋友参考一下

通过cpython把python的文件转换为二进制文件,达到代码保护的目的

1、下载Cython-0.28.2.tar.gz

python setup.py install安装

2、创建你需要打包成二进制的python文件

  test.py
  def hello(s):
    print(s)

3、创建一个setup.py文件,内如如下:

  from distutils.core import setup
  from Cython.Build import cythonize

  setup(
    name = "test",
    ext_modules = cythonize("test.py")
  )

4、运行编译程序

  python setup.py build_ext --inplace

5、得到的test.so文件可以直接用当成模块,通过python调用

以上这篇Python编译为二进制so可执行文件实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持小牛知识库。

 类似资料:
  • vendor 文件是什么? 任何一个 Composer 程序包想要传递给安装包的用户的命令行脚本都应该被列为 vendor 文件。 如果包包含了包用户不需要的其他脚本(如构建或编译脚本),则代码不应被列为 vendor 文件。 它是如何定义的? 它是通过将 bin 键添加到项目中来定义的 composer.json。它被指定为文件数组,因此可以为任何给定项目添加多个二进制文件。 { "bi

  • 本文向大家介绍Python编译成.so文件进行加密后调用的实现,包括了Python编译成.so文件进行加密后调用的实现的使用技巧和注意事项,需要的朋友参考一下 pyc的破解相对容易,使用cython将python文件编译成.so文件,能在一定程度上增强python源码的私密性。 编译成.so文件 环境准备:cython 测试脚本准备:test.py 脚本编译准备: 3.1 编写compile.py

  • 问题内容: 在kivy论坛中没有得到回应,因此请在这里尝试。 当我将教程pong代码编译为一个文件可执行文件时,我仍然必须将pong.kv文件包含在同一文件夹中才能运行。否则,启动exe时出现以下错误: 如何使它作为一个可执行文件运行。这是我的pong.spec文件: 请注意,我尝试将pong.kv包括在数据列表中,但这没有帮助。 谢谢,-Raj 问题答案: 根据KeyWeeUsr提供的链接(将数

  • 问题内容: 有没有一种方法可以在 不 执行的 情况下 从命令行编译Python .py文件? 我正在使用将python扩展名存储在权限有限的非标准路径中的应用程序,我想在安装过程中编译文件。我不需要Distutils的开销。 问题答案: 所述py_compile模块提供的功能,以生成从源文件中的字节码文件,并且当所述模块源文件被调用作为脚本使用的另一种功能。

  • 问题内容: 我为dlopen编写了一个程序 但我收到“分段错误”错误,我使用.so库测试了该程序,它可以工作,但无法使其自身运行 问题答案: 您需要编写代码: 仔细阅读dlopen(3),始终检查那里的&函数是否成功,并在失败时使用。 并用编译上面的文件 不要忘记获得所有警告和标志(以便能够将自己的符号放入动态表中)。 在我的Debian / Sid / x86-64系统上(版本4.8.2和版本2

  • 以下是我的cmake代码: 我尝试从链接中合并步骤,但没有工作,并得到以下错误: /usr/bin/ld:尝试动态对象的静态链接`/usr/lib/x86_64-linux-gnu/libglu.so'collect2:错误:ld返回1退出状态src/cmakefiles/wwest-export-app.out.dir/build.make:774:recipe for targe'bin/ww