【发布时间】:2019-06-01 09:31:18
【问题描述】:
我正在尝试在 Termux 中的 Android 上使用 python/cython。我安装了 python,cython pip - 没有“明显”的问题。现在我有两个简单的 test-sn-ps
一个“主”文件 mct.py
import os
hm=os.path.expanduser('~')
os.chdir(hm+'/projects/python1/v1')
from libmc import sq
print(sq(4))
还有一个愚蠢而琐碎的 cython '库'
cpdef double sq(double x):
return x*x
我以简单的方式编译了库(没有 distutils fuzz),即我这样做了
cython -3 mct.pyx
clang -shared -pthread -fpic -fwrapv -fno-strict-aliasing -O2 -Wall -I /data/data/com.termux/files/usr/include/python3.7m/ -o libmc.so -lpython3 mc.c
我确实在我的项目根目录中获得了一个 libmc.so。但是,当我尝试时
python mct.py
我明白了
Traceback (most recent call last):
File "mct.py", line 4, in <module>
from libmc import sq
ImportError: dynamic module does not define module export function (PyInit_libmc)
现在我被困住了。我在这里想念什么?有什么建议可以解决这个问题吗?
标记
PS.: 澄清一下,“正常”的 Python 在那个 Android 机器上似乎对我很有效。
【问题讨论】:
标签: android python cython termux