-
Notifications
You must be signed in to change notification settings - Fork 2.9k
Description
uv 0.4.11 on Ubuntu 22.04
I can install datrie (a dependency of snakemake) by using pip in a pyenv managed python 3.9.6 or 3.12.3 with no issues. pypi is missing wheels for python >3.8 but the compile with gcc succeeds creating datrie-0.8.2-cp39-cp39-linux_x86_64.whl. See attached pip logs.
if I try the same with uv pip install datrie==0.8.2 --verbose I get error: command 'clang' failed: No such file or directory
So somehow uv seems to want to compile this with clang even though I have gcc and pip can use that. See attached uv logs.
If I do CC=$(which gcc) CXX=$(which g++) uv pip install it does use gcc but I get another error command '/tools/llvm/bin/llvm-ar' failed: No such file or directory further down the line.
The only thing that works is to install llvm and clang and then symlink llvm-ar from where it is installed to this seemingly hard-coded path '/tools/llvm/bin/llvm-ar'. This seems pretty hacky....
Now clearly this is mostly the fault of the datrie package, which is seemingly abandoned despite being a dependency of the very active and popular snakemake package, but my question is why does pip succeed where uv fails?