将py文件转换为so文件全过程

1. 安装gcc,以及cython

zypper in gcc

cython在anaconda3中自带的

2. 编写test.py

def test():
    print('hello')
# test()

3. 编写成so文件

mv /root/anaconda3/include/python3.7m/* /usr/include/
# 将/root/anaconda3/include/python3.7m中所有文件mv到/usr/include中,因为gcc默认寻找编译文件目录是/usr/include
cython test.py # 当前目录下生成test.c文件
gcc -c -fPIC test.c # 当前目录下生成test.o文件
gcc -shared test.o -o test.so # 当前目录下生成test.so文件

4. 测试

在当前目录中移除test.py文件,输入python(默认python3.7)

>>>import test
>>>test.test()
hello

将py文件转换为so文件全过程_第1张图片

你可能感兴趣的:(Linux)