prefix-dev / pixi

Package management made easy
https://pixi.sh
BSD 3-Clause "New" or "Revised" License
2.47k stars 139 forks source link

Undefined symbol for `pyarrow` #1194

Open mjkanji opened 3 months ago

mjkanji commented 3 months ago

Checks

Reproducible example

My pixi.toml is shown below.

pixi.toml ```toml [project] name = "easyknock_analytics" version = "0.1.0" description = "Add a short description here" authors = ["Muhammad Jarir Kanji "] channels = ["conda-forge"] platforms = ["linux-64", "osx-arm64"] [tasks] dbt_run = { cmd = "dbt run" } [dependencies] python = ">=3.10,<3.11" pip = "*" pre-commit = "*" pytz = "*" pandas = ">=2.2.2,<2.3" [pypi-dependencies] dbt-core = { version = ">=1.7, <1.8" } dbt-redshift = "*" sqlfluff = "*" sqlfluff-templater-dbt = "*" dbt-coves = "*" [feature.dev.dependencies] [environments] dev = { features = ["dev"], solve-group = "dev" } prod = { features = [], solve-group = "dev" } ```

Then, simply do:

pixi run python
> import pyarrow

Issue description

This results in an undefined symbol error for Arrow:

ImportError: .pixi/envs/default/lib/python3.10/site-packages/pyarrow/libarrow_python.so: undefined symbol: _ZNK5arrow8DataType18ComputeFingerprintB5cxx11Ev

Expected behavior

That Pyarrow should be installed properly.

ruben-arts commented 3 months ago

He I can't reproduce it, could you provide a pixi.lock for which this issue exist?

I installed your pixi.toml on my linux-64 machine and I could correctly import pyarrow

tadejsv commented 3 months ago

I remember having such an issue - the problem was that pyarrow installed by pypi was interfering with pyarrow installed by pixi