No project description provided
Project description
ccbuild
ccbuild
将python
开发的项目、流程或脚本文件进行编译成C
的动态共享库*.so
文件,不影响项目运行,可用于某些场景下python
源码保护。
依赖
- Linux
- Python >=2.7.10, <=3.10
- cython
安装
git repo with the development version
pip install git+https://github.com/yodeng/ccbuild.git
Pypi
pip install ccbuild
使用
$ ccbuild -h
相关参数解释如下:
参数 | 描述 |
---|---|
-h/--help | 打印帮助并退出 |
-p/--python | 编译后运行项目使用的python解释器路径,非绝对路径会从$PATH中查找 |
-i/--input | 需要编译的py文件或项目目录 |
-o/--output | 编译后的项目或文件输出路径 |
-t/--threads | cpu核数,默认5 |
-c/--compile-continue | 若某个文件编译失败,是否跳过,继续编译,默认编译失败退出程序 |
--exclude-dir | 跳过的编译目录,默认"__pycache__"会被跳过, 多个输入空白隔开,支持简单shell匹配 |
--exclude-file | 跳过的编译文件,默认"__init__.py"会被跳过,多个输入空白隔开,支持简单shell匹配 |
-v/--version | 打印版本并退出 |
-p/--python
指定的解释器为编译后运行项目的解释器,相同版本的解释器可以通用
说明
-
编译后的输出目录,使用方式不变,只是项目中的
py
文件变成了so
二进制文件。 -
有可能存在编译失败的情况,原因是由于
python
代码中有cython
识别不了的未导入的模块,cython
和python
并不是百分百兼容,需要调整python
代码即可通过编译。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distributions
File details
Details for the file ccbuild-1.1.0-py2.py3-none-any.whl
.
File metadata
- Download URL: ccbuild-1.1.0-py2.py3-none-any.whl
- Upload date:
- Size: 8.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/2.7.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ab0c22806506e56b8932a10dcc4de15e8112285c2484d87635a7273a4d7a6c1 |
|
MD5 | 72983b20965f1e757f913ee25d2d4c8b |
|
BLAKE2b-256 | 66a91c80366a8cbc81bd24af02c1a62f63fac596b1d389ecefd12b4c0c1d495c |
File details
Details for the file ccbuild-1.1.0-2-py2.py3-none-any.whl
.
File metadata
- Download URL: ccbuild-1.1.0-2-py2.py3-none-any.whl
- Upload date:
- Size: 8.2 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.25.1 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/2.7.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 79c588fad93faada41d8c8033118dd636f0322767104ea880de5b788a4b30908 |
|
MD5 | 20de02d1c61eac859633077c95bf8ad6 |
|
BLAKE2b-256 | e5139e837edbc9862a68ac234959eb9e6f2a8adc33675700210720506739636b |