Comments (20)
I created a PR to add libR-sys bindings for linux/arm64 (extendr/libR-sys#133)
from prqlc-r.
#90 should allow installation on arm64 Linux.
from prqlc-r.
I tested it on RPi OS, and it is working great!
Do you have an estimate for a CRAN release? I would like to have this added to the R4Pi project to have a binary for RPi OS
from prqlc-r.
FYI, a binary for aarch64 is available now in the R4Pi package repository.
It took a little while because we had to figure out some infrastructure management issues to make sure Rust can be installed consistently in the builder server without manual intervention.
from prqlc-r.
@andresrcs FYI, prqlr can be source install without Rust now.
If you don't mind using pre-built binaries, you should be able to get a fast install on the Raspberry Pi by trying something like the following, as described in the README.
Sys.setenv(NOT_CRAN = "true")
install.packages("prqlr")
from prqlc-r.
Thanks for the heads up. I do not compile prqlr
on the Pi any more since I use the R4Pi project for binaries but I'll let them know Rust is no longer mandatory for the building tool chain
from prqlc-r.
Thank your for letting me know about that!
I believe this is actually an extendr issue, since this package does not use libR-sys directly.
What happens if you install another package that uses extendr, like https://github.com/extendr/helloextendr? (sorry, I can't try this right now)
from prqlc-r.
What happens if you install another package that uses extendr, like https://github.com/extendr/helloextendr? (sorry, I can't try this right now)
Sadly, I get the same error message. My hope was that compilation options for cargo
were set by you and you could simply add --features use-bindgen
to the Makevars
file.
from prqlc-r.
Those files come from rextendr.
Could you please create an issue on rextendr or libR-sys?
from prqlc-r.
The problem is both rextender
and libR-sys
(even with --features use-bindgen) compile just fine on arm64 so I don't know on what basis I can open an issue there since I'm not familiar with the Rust language.
from prqlc-r.
The new libR-sys
0.4.0 release, which includes the aarch64 bindings, is available now but when installing prqlr
it keeps downloading version 0.3.0. I guess this comes from rextendr
?
from prqlc-r.
The version of extendr is fixed here. This needs to be updated.
from prqlc-r.
It appears that extendr 0.4.0 has not yet been released to crates.io.
https://crates.io/crates/extendr-api
from prqlc-r.
Do you have an estimate for a CRAN release? I would like to have this added to the R4Pi project to have a binary for RPi OS
Wow, that's fantastic!
This is a serious bug fix and I will try to submit it to CRAN in the next few days.
from prqlc-r.
prqlr 0.2.1 is now on CRAN.
from prqlc-r.
Now compilation fails on RPi OS because of the cargo version
cargo build --lib --release --manifest-path=./rust/Cargo.toml --target-dir ./rust/target error: failed to parse manifest at `/tmp/RtmpO4x1Jc/R.INSTALL1806e2c2bf6d7/prqlr/src/rust/Cargo.toml` Caused by: failed to parse the `edition` key Caused by: this version of Cargo is older than the `2021` edition, and only supports `2015` and `2018` editions. make: *** [Makevars:16: rust/target/release/libprqlr.a] Error 101 ERROR: compilation failed for package ‘prqlr’
It would be possible for you to lower the version requirement?
from prqlc-r.
Now compilation fails on RPi OS because of the cargo version
cargo build --lib --release --manifest-path=./rust/Cargo.toml --target-dir ./rust/target error: failed to parse manifest at `/tmp/RtmpO4x1Jc/R.INSTALL1806e2c2bf6d7/prqlr/src/rust/Cargo.toml` Caused by: failed to parse the `edition` key Caused by: this version of Cargo is older than the `2021` edition, and only supports `2015` and `2018` editions. make: *** [Makevars:16: rust/target/release/libprqlr.a] Error 101 ERROR: compilation failed for package ‘prqlr’
It would be possible for you to lower the version requirement?
The version of Rust is too old (older than 1.56 !?).
It is not possible to support that version because many dependent packages do not support it.
The Rust version of Debian stable is too old, so if you install it with apt, you will need to install from testing at least.
from prqlc-r.
I see, I'll try to convince Mark (from R4Pi) to install Rust with rustup.
rustup installs per user and when I used prqlr on RStudio with my personal user rather than Pi, it worked normally. As far as I can tell, once the package is installed an up to date Rust version is no longer required right?
from prqlc-r.
I see, I'll try to convince Mark (from R4Pi) to install Rust with rustup.
Thank you for doing this. The Rust version of Debian stable is really too old... (See #49)
Ubuntu is currently 1.61, which is much newer than Debian stable, but still quite old and prql-compiler cannot be installed.
I am currently continuing to patch prql-compiler with every release of prqlr to make it buildable on older Rust versions.......
rustup installs per user and when I used prqlr on RStudio with my personal user rather than Pi, it worked normally. As far as I can tell, once the package is installed an up to date Rust version is no longer required right?
Yes, it is required at source code build time.
from prqlc-r.
@andresrcs Awesome! Thank you for working on that!
from prqlc-r.
Related Issues (20)
- Fix compile error on Windows with Rust 1.70
- color code handlling in errors
- Update for "Using Rust in CRAN packages" HOT 2
- Docs about vendoring HOT 1
- Package ‘prqlr’ was removed from the CRAN repository. Archived on 2023-08-19 for policy violation. HOT 1
- Package ‘prqlr’ was removed from the CRAN repository. Archived on 2023-08-31 for policy violation. HOT 3
- CRAN acceptable inst/AUTHORS format HOT 2
- Updates for knitr 1.44
- Installation issue on Windows HOT 1
- CI: cache Rust
- CI: upload binary artifacts
- Rust lib binary release
- manual entry for prqlr HOT 1
- pre-built binaries shoud be built with R 4.2? HOT 1
- Support arm64 cross-compile on R-universe
- Rename the package and transfar the repo HOT 9
- Follow up tasks for #252
- build fails on nightly (or wasm target only?) HOT 2
- Build failuar on CRAN Windows builder HOT 4
- WASM build check in CI
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from prqlc-r.