使用cython将py文件编译成so文件
来源:互联网 发布:java excel jxl poi 编辑:程序博客网 时间:2024/05/29 15:03
一、环境准备
安装cython,以及gcc编译环境
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
pip install cython
yum install -y gcc python-devel
二、编写测试脚本
test.py,内容如下
import os
def test():
print os.path.realpath('.')
三、将其拷贝到python系统路径
/usr/lib/python2.7/site-packages/test
在test目录下创建__init__.py, 与 test.py 的文件
test.py 上面内容如上所示
四、脚本测试
python
>>> import lyh.test
>>> lyh.test.test()
五、编译so文件
以下操作均在 /usr/lib/python2.7/site-packages/test 路径下执行
1. cython test.py
2. gcc -c -fPIC -I/usr/include/python2.7/ test.c
3. gcc -shared test.o -o test.so
六、验证so文件的可用性
1. 移除/usr/lib/python2.7/site-packages/test/test.py 文件,只保留 test.so文件
test
├── __init__.py
└── test.so
2.
python
>>> import test.test
>>> test.test.test()
可以执行
安装cython,以及gcc编译环境
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
pip install cython
yum install -y gcc python-devel
二、编写测试脚本
test.py,内容如下
import os
def test():
print os.path.realpath('.')
三、将其拷贝到python系统路径
/usr/lib/python2.7/site-packages/test
在test目录下创建__init__.py, 与 test.py 的文件
test.py 上面内容如上所示
四、脚本测试
python
>>> import lyh.test
>>> lyh.test.test()
五、编译so文件
以下操作均在 /usr/lib/python2.7/site-packages/test 路径下执行
1. cython test.py
2. gcc -c -fPIC -I/usr/include/python2.7/ test.c
3. gcc -shared test.o -o test.so
六、验证so文件的可用性
1. 移除/usr/lib/python2.7/site-packages/test/test.py 文件,只保留 test.so文件
test
├── __init__.py
└── test.so
2.
python
>>> import test.test
>>> test.test.test()
可以执行
验证完成
七、使用setup.py 编译so
1. 编写setup.py文件,位于/usr/lib/python2.7/site-packages/test,内容如下:
from distutils.core import setup
from Cython.Build import cythonize
setup(
ext_modules = cythonize("test.py")
)
2.然后运行
setup.py build_ext --inplace
阅读全文
0 0
- 使用cython将py文件编译成so文件
- 使用cython将py文件编译成so文件
- python将py编译成so方法
- 将.py文件编译成 .pyc/.pyo文档
- python 反编译 将pyc 文件编译成 py源文件
- python 将pyc 文件反编译成py源文件
- mac os x 将C文件编译成.so库
- Android NDK将C++/C编译成so文件
- .c文件编译成.so文件
- jni文件编译成.so文件
- 使用csc命令将.cs文件编译成.dll文件
- 【Python】将python的py文件编译成保密的pyc文件
- python编译运行检错神器(将.py文件编译成.pyc文件)
- linux下如何将c++程序编译成so,如何调用该so文件
- 将Js文件编译成dll文件
- 将.CS文件编译成.dll文件
- 将javascript文件编译成dll文件
- 将.jar文件编译成.exe文件
- jquery 控制checkbox
- 三剑客——sed常用用法
- 使用web容器启动job任务
- spring中配置邮件发送服务
- c++学习过程中认识的改变
- 使用cython将py文件编译成so文件
- mysql从mysqldump备份中恢复某张表内容
- 树莓派安装noobs操作系统
- 【目录索引】数据结构部分索引
- 传统数据库安全性问题
- WebStorm基于NodeJS的开发
- 命令模式
- 收获,不止SQL优化——抓住SQL的本质--第二章
- CSS学习之CSS Selectors