librasteve / raku-Dan-Polars

Raku Polars binding
Artistic License 2.0
5 stars 2 forks source link

Any idea why polars-core would fail to compile? #8

Closed ispyhumanfly closed 1 year ago

ispyhumanfly commented 1 year ago

I'm experimenting with Dan::Polars, but can't get it to build on my ubuntu:kinetic Docker container. Any ideas?


#6 666.4 [Dan::Polars]    Compiling ffi-convert v0.5.0
#6 666.4 [Dan::Polars]    Compiling hashbrown v0.12.3
#6 666.4 [Dan::Polars]    Compiling polars-utils v0.22.7
#6 666.4 [Dan::Polars]    Compiling polars-arrow v0.22.7
#6 666.4 [Dan::Polars]    Compiling polars-core v0.22.7
#6 666.4 [Dan::Polars] error: could not compile `polars-core`
#6 666.4 [Dan::Polars] Caused by:
#6 673.7 Aborting due to build failure: Dan::Polars:ver<0.0.1>:auth<zef:p6steve>:api<1> (use --force-build to override)
#6 673.7 [Dan::Polars]   process didn't exit successfully: `rustc --crate-name polars_core --edition=2021 /root/.cargo/registry/src/github.com-1ecc6299db9ec823/polars-core-0.22.7/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 --cfg 'feature="chrono"' --cfg 'feature="comfy-table"' --cfg 'feature="docs"' --cfg 'feature="dtype-date"' --cfg 'feature="dtype-datetime"' --cfg 'feature="dtype-duration"' --cfg 'feature="dtype-time"' --cfg 'feature="fmt"' --cfg 'feature="lazy"' --cfg 'feature="private"' --cfg 'feature="rand"' --cfg 'feature="rand_distr"' --cfg 'feature="random"' --cfg 'feature="regex"' --cfg 'feature="rows"' --cfg 'feature="sort_multiple"' --cfg 'feature="temporal"' --cfg 'feature="zip_with"' -C metadata=7ee187e9291b48c3 -C extra-filename=-7ee187e9291b48c3 --out-dir /tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps -L dependency=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps --extern ahash=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libahash-35bd393437440dd1.rmeta --extern anyhow=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libanyhow-aef613d52cec64ee.rmeta --extern arrow=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libarrow2-cbe45a12c5f9f2c6.rmeta --extern chrono=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libchrono-0a27079d345430e3.rmeta --extern comfy_table=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libcomfy_table-3b6ca3c78d0b3556.rmeta --extern hashbrown=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libhashbrown-e3006269ddff8291.rmeta --extern indexmap=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libindexmap-e7fd33c1cd3ea966.rmeta --extern num=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libnum-49196459840d18ba.rmeta --extern once_cell=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libonce_cell-0d8c2dfe719bf5e0.rmeta --extern polars_arrow=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libpolars_arrow-518b25bb5b84638c.rmeta --extern polars_utils=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libpolars_utils-7dbdcd5315a705b6.rmeta --extern rand=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/librand-dee6c8ec27aa4334.rmeta --extern rand_distr=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/librand_distr-2757c8a74861f550.rmeta --extern rayon=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/librayon-20a4aef9d5ff31a4.rmeta --extern regex=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libregex-ae47283e49c2deb2.rmeta --extern thiserror=/tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/dan/target/debug/deps/libthiserror-13a9fda5f2f378ae.rmeta --cap-lints allow` (signal: 9, SIGKILL: kill)
#6 673.7 [Dan::Polars] warning: build failed, waiting for other jobs to finish...
#6 673.7 [Dan::Polars]   in method build at /tmp/.zef/raku-Dan-Polars.git/813851c7abf623b3fc0aa79506af3ae0e8125ac5/Build.pm line 5
#6 673.7 [Dan::Polars] The spawned command 'cargo' exited unsuccessfully (exit code: 101, signal: 0)
librasteve commented 1 year ago

Hmmm

All my work is done with the Dockerfile in this repo, which in turn builds on this https://github.com/p6steve/raku-Dockerfiles/blob/main/rusty-ma/Dockerfile

FROM p6steve/rakudo:basic

LABEL maintainer="p6steve <p6steve@furnival.net>"
LABEL tag="p6steve/rakudo:rusty"

ENV PATH=$PATH:~/.cargo/bin

RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | bash -s -- -y 

When I run the above lines manually on p6steve/rakudo:basic, then it builds polars-core v0.22.7 successfully.

You may want to look into that rustup line...?


Next the Dockerfile in this repo runs:

FROM p6steve/rakudo:rusty

ENV PATH="${PATH}:/root/.cargo/bin"

RUN zef install https://github.com/p6steve/raku-Dan-Polars.git --verbose

Finally, the Build.pm runs 'cargo build' according to the '/dan/Cargo.toml'. So you could try removing items (polars?) from the Cargo.toml and then getting them up line by line.


Other than that perhaps a rust tagged question on the rust/polars SO channel or Discord...? since it seems that polars is the culprit!

ispyhumanfly commented 1 year ago

Hey, @p6steve thank you for this detailed rundown. I'll take some time and see if I can get a bit further with the guidance you suggested.