Closed atlid8 closed 10 months ago
If you can, drop the ubuntu vm down to 20.04, this is due to 22.04's use of OpenSSL 3.0
https://github.com/Azure/azure-uamqp-python/issues/276
https://github.com/Azure/azure-c-shared-utility/discussions/566
Hello, sorry for the late reply. I'm working on the issue and was able to build uamqp on Ubuntu 22.04 using the following.
If you are using the Event Hubs SDK I would encourage you to try the new version 5.11.1 which is running on a new python based AMQP stack and doesn`t require uamqp. We will be doing the same for Service Bus shortly.
FROM ubuntu:22.04
RUN apt-get update -y
RUN apt-get install -y build-essential libssl-dev uuid-dev cmake libcurl4-openssl-dev pkg-config python3-dev python3-pip git
RUN git clone --single-branch --branch fix_openssl3 https://github.com/kashifkhan/azure-uamqp-python.git
RUN pip3 install --no-binary :all: azure-uamqp-python/```
Describe the bug Can't pip install UAMQP on Ubuntu QEMU thought M1
To Reproduce Steps to reproduce the behavior:
Expected behavior Package is installed
Additional context Output is: pip3 install uamqp --no-binary :all: Collecting uamqp Using cached uamqp-1.5.3.tar.gz (4.4 MB) Preparing metadata (setup.py) ... done Requirement already satisfied: certifi>=2017.4.17 in ./venv/lib/python3.8/site-packages (from uamqp) (2020.6.20) Requirement already satisfied: six~=1.0 in ./venv/lib/python3.8/site-packages (from uamqp) (1.15.0) Skipping wheel build for uamqp, due to binaries being disabled for it. Installing collected packages: uamqp Running setup.py install for uamqp ... error error: subprocess-exited-with-error
× Running setup.py install for uamqp did not run successfully. │ exit code: 1 ╰─> [257 lines of output] running install running build running build_py creating build creating build/lib.linux-aarch64-3.8 creating build/lib.linux-aarch64-3.8/uamqp copying uamqp/compat.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/sender.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/mgmt_operation.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/client.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/connection.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/session.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/init.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/utils.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/message.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/types.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/receiver.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/errors.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/constants.py -> build/lib.linux-aarch64-3.8/uamqp copying uamqp/address.py -> build/lib.linux-aarch64-3.8/uamqp creating build/lib.linux-aarch64-3.8/uamqp/async_ops copying uamqp/async_ops/session_async.py -> build/lib.linux-aarch64-3.8/uamqp/async_ops copying uamqp/async_ops/receiver_async.py -> build/lib.linux-aarch64-3.8/uamqp/async_ops copying uamqp/async_ops/sender_async.py -> build/lib.linux-aarch64-3.8/uamqp/async_ops copying uamqp/async_ops/client_async.py -> build/lib.linux-aarch64-3.8/uamqp/async_ops copying uamqp/async_ops/init.py -> build/lib.linux-aarch64-3.8/uamqp/async_ops copying uamqp/async_ops/connection_async.py -> build/lib.linux-aarch64-3.8/uamqp/async_ops copying uamqp/async_ops/mgmt_operation_async.py -> build/lib.linux-aarch64-3.8/uamqp/async_ops copying uamqp/async_ops/utils.py -> build/lib.linux-aarch64-3.8/uamqp/async_ops creating build/lib.linux-aarch64-3.8/uamqp/authentication copying uamqp/authentication/common.py -> build/lib.linux-aarch64-3.8/uamqp/authentication copying uamqp/authentication/cbs_auth.py -> build/lib.linux-aarch64-3.8/uamqp/authentication copying uamqp/authentication/cbs_auth_async.py -> build/lib.linux-aarch64-3.8/uamqp/authentication copying uamqp/authentication/init.py -> build/lib.linux-aarch64-3.8/uamqp/authentication running egg_info writing uamqp.egg-info/PKG-INFO writing dependency_links to uamqp.egg-info/dependency_links.txt writing requirements to uamqp.egg-info/requires.txt writing top-level names to uamqp.egg-info/top_level.txt reading manifest file 'uamqp.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' writing manifest file 'uamqp.egg-info/SOURCES.txt' copying uamqp/c_uamqp.c -> build/lib.linux-aarch64-3.8/uamqp running build_ext will build uamqp in build/temp.linux-aarch64-3.8/cmake Building with generator flags: -G "Unix Makefiles" calling cmake /tmp/pip-install-m_ohs_ed/uamqp_394c3982453e415e8bff5eb9e0480092/src/vendor/azure-uamqp-c/ -G "Unix Makefiles" -Duse_openssl:bool=ON -Duse_default_uuid:bool=ON -Duse_builtin_httpapi:bool=ON -Dskip_samples:bool=ON -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE -DCMAKE_BUILD_TYPE=Release -- The C compiler identification is GNU 11.2.0 -- The CXX compiler identification is GNU 11.2.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /usr/bin/cc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done CMake Deprecation Warning at deps/azure-macro-utils-c/CMakeLists.txt:4 (cmake_minimum_required): Compatibility with CMake < 2.8.12 will be removed from a future version of CMake.
note: This error originates from a subprocess, and is likely not a problem with pip. error: legacy-install-failure
× Encountered error while trying to install package. ╰─> uamqp