python打包成so檔案過程解析
阿新 • • 發佈:2020-01-09
這篇文章主要介紹了python打包成so檔案過程解析,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
wget https://bootstrap.pypa.io/get-pip.py python get-pip.py pip install cython
編寫setput.py檔案:
setup.py檔案內容如下:
from distutils.core import setup from distutils.extension import Extension from Cython.Build import cythonize extensions = [Extension("ln_facedetector",["ln_facedetector.py"],include_dirs=["/usr/local/lib"],libraries=["/usr/local/lib/python3.6/site-packages/cv2/cv2.cpython-36m-x86_64-linux-gnu.so","/usr/local/lib/python3.6/site-packages/dlib.cpython-36m-x86_64-linux-gnu.so"],library_dirs=["/usr/local/lib/python3.6/site-packages/cv2","/usr/local/lib/python3.6/site-packages"])] setup(ext_modules=cythonize(extensions))
整個工程中包括多少個py檔案,就寫多少個Extension,並把需要呼叫的其他庫路徑在include_dirs、libraries、library_dirs中進行設定。
編譯so檔案,執行以下命令:
python setup.py build_ext
呼叫so檔案:
import sys sys.path.append('/vloum/faceSO/ln_facedetector') #載入so檔案(入參為so檔案路徑) from ln_facedetector import faceutil #import so檔案中的相關類 arr = faceutil.detection("/vloum/faceSO/a.jpg") print(arr)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。