首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用python请求库时Apple M1芯片分割错误

使用python请求库时Apple M1芯片分割错误
EN

Stack Overflow用户
提问于 2021-10-16 17:47:35
回答 1查看 2.6K关注 0票数 3

硬件:

  • 苹果Mac与M1芯片
  • Mac 11.6

问题:

长话短说!

我开始在我的python模块中开发连接rest,使用python请求库通过OAuth1进行交互。

我是用一个码头集装箱在本地开发的。

3.8.x

  • openssl
  • Ubuntu 20.04

1.1.1f

当我在代码中运行requests.delete命令时,它总是返回一个分段错误(、SIGSEGV、)。

致命Python错误:分段错误

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-16 17:59:47

经过大量调试和搜索,我发现这个错误发生在ssl库中。这就是如何解决这个问题的切入点:

故障排除:

更新到最新的openssl==1.1.1g 版本3.9,并至少使用版本。

下面是Dockerfile如何在Ubuntu20.04上更新Python和openssl。

代码语言:javascript
复制
FROM ubuntu:20.04
RUN apt update
# SET PYTHON 3.9 AS DEFAULT PYTHON VERSION ON UBUNTU
RUN apt install -y software-properties-common
RUN add-apt-repository ppa:deadsnakes/ppa
RUN apt -y install python3.9
RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1
RUN update-alternatives --config python3
WORKDIR /<your_work_dir>
COPY requirements.txt ./
RUN apt install -y pip \
    && pip install -r requirements.txt
# FROM HERE OPENSSL
RUN apt install -y wget
RUN wget https://www.openssl.org/source/openssl-1.1.1l.tar.gz
RUN tar -zxf openssl-1.1.1l.tar.gz
WORKDIR /<your_work_dir>/openssl-1.1.1l
RUN ./config
RUN make
RUN make install
RUN mv /usr/bin/openssl ~/tmp
RUN ln -s /usr/local/bin/openssl /usr/bin/openssl
RUN ldconfig
ENV LD_LIBRARY_PATH="/usr/local/lib:${LD_LIBRARY_PATH}"

注意:

通过M1芯片创建接口容器ubuntu实例时,显然会出现错误。在Windows机器上检查Windows创建的停靠器容器(带有错误依赖项的代码)上的相同代码可以工作。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69598150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档