Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

macos: Fix CI dependency error #761

Merged
merged 1 commit into from
Mar 30, 2024
Merged

Conversation

jdemel
Copy link
Contributor

@jdemel jdemel commented Mar 30, 2024

The following error popped up during our CI builds on MacOS:

$ pip3 install mako
  shell: /bin/bash -e {0}
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
    xyz, where xyz is the package you are trying to
    install.

    If you wish to install a non-brew-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip.

    If you wish to install a non-brew packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

PEP668 tries to help people to prevent dependency issues on their systems.
We can be pretty sure that our controlled CI environment is not affected by this issue. Thus, we can use --break-system-packages and install system-wide.

We introduced the FlyCI runner in #752 to enable CI runs on MacOS/ARM. This PR fixes a Python dependency install issue. Further, it installs liborc via brew install orc to test and install ORC kernels.

The following error popped up during our CI builds on MacOS:
```shell
$ pip3 install mako
  shell: /bin/bash -e {0}
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
    xyz, where xyz is the package you are trying to
    install.

    If you wish to install a non-brew-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip.

    If you wish to install a non-brew packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.
```
[PEP668](https://peps.python.org/pep-0668/) tries to help people to
prevent dependency issues on their systems.
We can be pretty sure that our controlled CI environment is not affected
by this issue. Thus, we can use `--break-system-packages` and install
system-wide.

Signed-off-by: Johannes Demel <jdemel@gnuradio.org>
@jdemel jdemel merged commit 5658541 into gnuradio:main Mar 30, 2024
34 checks passed
@jdemel jdemel deleted the fix-python-build-deps branch March 30, 2024 22:52
Alesha72003 pushed a commit to Alesha72003/volk that referenced this pull request May 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant