

Why do you need gcc to compile a Python program?
this is pretty common in interpreted languages/runtimes like Python, Node.js, Ruby, etc where a dependency is written in C or C++ or Rust or something else when the performance benefit is worth the cost of abandoning the primary language
the amusing/horrifying part is that Node.js actually depends on a Python script for this, so any Node.js application with a C/C++/Rust dependency actually needs Python installed somewhere
e.g. https://github.com/pyca/cryptography is a Python dependency that requires the Rust compiler/toolchain if pip / pipx / uv can’t find a pre-compiled version for your system
To me sounds like either a neglected project or designed to run in a docker image maybe? When was it updated last?
as far as i can tell, the project is alive and well, frequent and recent commits, and all the dependencies involved here are on their latest versions
In such cases its probably the best to run the application in a virtual machine.
and yeah, i know i can fix this with a VM or a Dockerfile and i’ll probably have to
but my point is that Python is kinda’ hot garbage for sharing code that depends on other shared code
it’s a terrific language by itself and sharing code that only depends on the standard library is perfectly fine, but as soon as we share code that depends on other third-party code we introduce inevitable suffering
hehe, this exact same problem but in Node.js drove me towards Rust, as well 🦀
there are widely-used Rust crates that wrap C/C++ code and there are the …-sys crates that expose bindings for dynamically-linked dependencies, but i’ve never encountered one that needed a specifically-ancient version of GCC