Comments (8)
Thanks for the feedback @JCallicoat @tyilo
I will also add PR for lib64 glibc and fallback to cargo
without the --target
from cargo-binstall.
Is there a reason for not always using the same target as
cargo install
does?
On NixOS, there isn't a global libc in /lib
, the glibc is put in a different location as a separate nix package.
If someone installed rustc
on NixOS with glibc, the rustc -vV
will give x86_64-unknown-linux-gnu
, however downloaded gnu binaries cannot run due to missing libc.
from cargo-binstall.
I was about to post about this same issue. I checked on arch and fedora37 - 39/rawhide and they all have the vanilla GNU libc
instead of ubuntu's GLIBC
in the ld-linux output, but I just saw @NobodyXu fixed that in 104b399.
Another problem is that fedora ld-linux is under /lib64/ld-linux-x86-64.so.2
/ /usr/lib64/ld-linux-x86-64.so.2
so it would not be found by the three locations here.
cargo-binstall/crates/detect-targets/src/detect/linux.rs
Lines 44 to 46 in 86060fa
from cargo-binstall.
It seems to me that the target for building shouldn't necessarily be the same as for downloading.
For building it should always be a target that is installed, otherwise it would fail anyway. So if the user only has one of musl
and gnu
targets, that target should always be picked no matter what the detection algorithm determines.
from cargo-binstall.
Thanks, I will submit a fix for this shortly.
It is surprising how glibc from different distro behaves so differently.
from cargo-binstall.
Is there a reason for not always using the same target as cargo install
does?
from cargo-binstall.
Shouldn't a user of such as system configure cargo
to use x86_64-unknown-linux-musl
as the default target?
from cargo-binstall.
@tyilo Opened #1430 for your idea
from cargo-binstall.
Related Issues (20)
- Perform a publish dry-run upfront so it fails early, then skip the verify on the last publish step
- Verify signature in cargo-binstall workflow HOT 7
- cargo-binstall stopped working HOT 9
- GitHub token validation is broken
- Windows: v1.3.1 stopped working with VPN on HOT 26
- Fix caching in release-dry-run HOT 2
- Signing: support GPG
- Signing: support sigstore
- Signing: support SSH
- feature: Re-land the support for custom linux distro in `detect-targets`
- Linux: not working with wired? connection HOT 1
- Enable dry run only for cli release PRs HOT 1
- resolve log is too verbose HOT 2
- musl target change HOT 14
- Unnecessary warning about lack of `~/.git-credentials` HOT 3
- Question about the template macro HOT 2
- Consider adding -Zcross-crate-inline-threshold=always HOT 3
- Add cargo-run-bin to readme HOT 6
- cargo-binstall doesn't work behind corporate firewall HOT 3
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 cargo-binstall.