python - ld:警告:macOS 不推荐使用 i386 架构(从 Xcode 构建设置中删除:ARCHS)
问题描述
我是 C 新手,我正在编写 Python C 扩展来提高速度。
这是我的设置工具:
# file: setup.py
from distutils.core import setup, Extension
extra_objects = ["/Users/rrg/Documents/test/aliyun-log-c-
sdk/build/Debug/lib/liblog_c_sdk_static.a"]
module1 = Extension('pycproducer',
sources=['pycproducer.c'],
extra_objects=extra_objects)
setup(name='pycproducer',
version='1.0',
description='This is a Math package',
ext_modules=[module1])
但是当我运行python setup.py install
or时python setup.py build
,它显示:
ld:警告:macOS 不推荐使用 i386 架构(从 Xcode 构建设置中删除:ARCHS)
ld:警告:ignoring file
/Users/rrg/Documents/test/aliyun-log-c-sdk/build/Debug/lib/liblog_c_sdk_static.a,文件是为存档而构建的,它不是被链接的架构(i386):/Users/ rrg/Documents/test/aliyun-log-c-sdk/build/Debug/lib/liblog_c_sdk_static.a
它还表明编译命令是:
cc -bundle -undefined dynamic_lookup -arch x86_64 -arch i386 -Wl,-F。build/temp.macosx-10.13-intel-2.7/pycproducer.o /Users/rrg/Documents/test/aliyun-log-c-sdk/build/Debug/lib/liblog_c_sdk_static.a -o build/lib.macosx-10.13 -intel-2.7/pycproducer.so
我想问题是我使用了静态库:liblog_c_sdk_static.a
,但该库仅支持 x64。但是,当我运行时python setup.py install
,编译命令包含-arch x86_64 -arch i386
,这会导致此问题。
所以我的问题是:
- 如何在我的 中仅指定 X64
setup.py
?我不想支持i386。 - 或者如何
-arch i386
从编译命令中删除?编译命令是由distutils
(我猜)我运行时自动生成的python setup.py install
解决方案
推荐阅读
- c# - 类中的模拟字段?
- java - 如何向 EditTextPreference 添加消息?
- html - 如何为输入占位符制作弹跳效果?
- javascript - 如何从 javascript 调用 php 控制器操作以获取 json 数据?
- regex - 在正文中匹配字母等级
- sql - 在 SQL 中从多个表创建一个句子
- java - 如何将来自不同活动的数据保存到同一张表中?
- python - 将每日数据按月分组并计算每个用户的对象数
- android - 有没有办法将 BackgroundColorSpan 设置为 SpannableString ?
- spring - 尝试授权用户时出现 NumberFormatException