我写了一个C嵌入式python包,并使用以下代码构建了一个wheel文件:
python3 setup.py bdist_wheel
在我的 dist 文件夹中,我发现: mypackage-1.0-cp38-cp38-macosx_10_14_6_x86_64.whl
操作系统版本:10.15.7
64 位 Python 版本:3.8
pip3 版本:21.1.3
我的第一个问题是我的 macosx 的版本是 10.15.7,但是为什么轮子将 .whl 文件构建为版本 10.14.6
然后我尝试使用以下安装包:
python3 -m pip install dist/*
我收到的错误是 ERROR:mypackage-1.0-cp38-cp38-macosx_10_14_6_x86_64.whl 在此平台上不受支持。
然后我将 .whl 文件更改为“mypackage-1.0-cp38-cp38-macosx_10_15_7_x86_64.whl”并得到相同的错误。
有人遇到什么问题了吗? 下面是我的 setup.py
#!/usr/bin/env python
from setuptools import setup, Extension
import numpy as np
c_mycode = Extension(
'c_mycode',
sources=['c_mycode/pymycode.c',
'c_mycode/mycode.c' ],
include_dirs=['c_mycode', np.get_include()],
define_macros=[('NPY_NO_DEPRECATED_API', 'NPY_1_4_API_VERSION')])
setup(
name='mypackage',
version='1.0',
description=(
"a package in Python."
),
setup_requires=["wheel"],
author='xxx',
author_email='xxx@xxx',
license="BSD compatable (see the LICENSE file)",
packages=['mycode'],
ext_modules=[c_mycode]
)
答案 0 :(得分:0)
可能有更好的方法,但我借用了
的想法解决了这个问题我添加了一行使用
来指定平台的版本options={'bdist_wheel':{'plat_name':'macosx_10_15_x86_64'}}