mise
mise copied to clipboard
Problems installing with `curl https://mise.run | sh` on an `raspberry pi 3 model b+`.
Describe the bug
Installing mise with curl https://mise.run | sh
and running it with any command gives the following error:
mise --version
# bash: /home/pi/.local/bin/mise: cannot execute: required file not found
To Reproduce
Have a Raspberry Pi 3 Model B+ and install archlinuxarm on it (http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-armv7-latest.tar.gz).
Expected behavior
mise --version
should output its version.
mise doctor
output
Not possible
Additional context
uname -a
# Linux pipi 6.6.28-2-rpi #1 SMP Fri Apr 19 12:18:22 MDT 2024 armv7l GNU/Linux
curl https://mise.run | MISE_DEBUG=true sh
# mise: installing mise...
# > curl -#fLo /tmp/tmp.5hD9ZrH6FQ/mise-v2024.5.2-linux-armv7.tar.gz https://github.com/jdx/mise/releases/download/v2024.5.2/mise-v2024.5.2-linux-armv7.tar.gz
# ######################################################################## 100.0%
# mise-setup: tarball=/tmp/tmp.5hD9ZrH6FQ/mise-v2024.5.2-linux-armv7.tar.gz
# validating checksum
# mise: installed successfully to /home/pi/.local/bin/mise
# mise: run the following to activate mise in your shell:
# echo "eval \"\$(/home/pi/.local/bin/mise activate bash)\"" >> ~/.bashrc
#
# mise: this must be run in order to use mise in the terminal
# mise: run `mise doctor` to verify this is setup correctly
ls -al $HOME/.local/bin/mise
# -rwxr-xr-x 1 pi pi 20443788 May 2 04:07 .local/bin/mise
ldd /bin/ls
# linux-vdso.so.1 (0xbef84000)
# libcap.so.2 => /usr/lib/libcap.so.2 (0xb6f40000)
# libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0xb6f10000)
# libc.so.6 => /usr/lib/libc.so.6 (0xb6d70000)
# /lib/ld-linux-armhf.so.3 => /usr/lib/ld-linux-armhf.so.3 (0xb6f99000)
Output of all latests mise builds:
/home/pi/mise_installs/mise-v2024.5.2-linux-arm64 --version
# bash: /home/pi/mise_installs/mise-v2024.5.2-linux-arm64: cannot execute binary file: Exec format error
/home/pi/mise_installs/mise-v2024.5.2-linux-arm64-musl --version
# bash: /home/pi/mise_installs/mise-v2024.5.2-linux-arm64-musl: cannot execute binary file: Exec format error
/home/pi/mise_installs/mise-v2024.5.2-linux-armv6 --version
# bash: /home/pi/mise_installs/mise-v2024.5.2-linux-armv6: cannot execute: required file not found
/home/pi/mise_installs/mise-v2024.5.2-linux-armv6-musl --version
# mise 2024.5.2 linux-arm (2576af6 2024-05-02)
/home/pi/mise_installs/mise-v2024.5.2-linux-armv7 --version
# bash: /home/pi/mise_installs/mise-v2024.5.2-linux-armv7: cannot execute: required file not found
/home/pi/mise_installs/mise-v2024.5.2-linux-armv7-musl --version
# mise 2024.5.2 linux-arm (2576af6 2024-05-02)
/home/pi/mise_installs/mise-v2024.5.2-linux-x64 --version
# bash: /home/pi/mise_installs/mise-v2024.5.2-linux-x64: cannot execute binary file: Exec format error
/home/pi/mise_installs/mise-v2024.5.2-linux-x64-musl --version
# bash: /home/pi/mise_installs/mise-v2024.5.2-linux-x64-musl: cannot execute binary file: Exec format error
/home/pi/mise_installs/mise-v2024.5.2-macos-arm64 --version
# bash: /home/pi/mise_installs/mise-v2024.5.2-macos-arm64: cannot execute binary file: Exec format error
/home/pi/mise_installs/mise-v2024.5.2-macos-x64 --version
# bash: /home/pi/mise_installs/mise-v2024.5.2-macos-x64: cannot execute binary file: Exec format error
Which kernel/distro you have ? Bookwork throw a Floating point exception
Archlinuxarm (http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-armv7-latest.tar.gz) with the core/linux-rpi
kernel (https://github.com/raspberrypi/linux)
the mise should be linked to /home/pi/mise_installs/mise-v2024.5.2-linux-armv7-musl
I assume the condition for libc does not match in this case, not setting the -musl
suffix.
what's the output of these?
getconf GNU_LIBC_VERSION
ldd --version
getconf GNU_LIBC_VERSION
# glibc 2.35
ldd --version
# ldd (GNU libc) 2.35
# Copyright (C) 2022 Free Software Foundation, Inc.
# This is free software; see the source for copying conditions. There is NO
# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# Written by Roland McGrath and Ulrich Drepper.
everything seems to be saying libc ¯\_(ツ)_/¯
is the issue the glibc version maybe? or maybe we should just use musl by default
I updated the system and now glibc is the latest version but this did not fix the issue.
getconf GNU_LIBC_VERSION
# glibc 2.39
ldd --version
# ldd (GNU libc) 2.39
# Copyright (C) 2024 Free Software Foundation, Inc.
# This is free software; see the source for copying conditions. There is NO
# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# Written by Roland McGrath and Ulrich Drepper.
I also searched for some rust applications on https://github.com/rust-unofficial/awesome-rust that use a similar installation script and tried to install them. Maybe this can help you in deciding what to do.
doesn't have precompiled binaries for armv7:
- https://github.com/bytecodealliance/wasmtime
- https://github.com/datanymizer/datanymizer
- https://github.com/dotenv-linter/dotenv-linter
- https://github.com/casey/just
- https://github.com/metalbear-co/mirrord
- https://github.com/wasmerio/wasmer
installs wrong binary:
- https://github.com/denoland/deno
installs working binary:
- https://github.com/ducaale/xh Detected target: arm-unknown-linux-gnueabihf
- https://github.com/ajeetdsouza/zoxide Detected architecture: armv7-unknown-linux-musleabihf