我想在目前没有包管理器的嵌入式系统上安装一个包管理器。
我知道最好的方法是使用bitbake来简单地烘焙一个新的映像,其中包括一个包管理器,然后将这个映像闪现到板上,但不幸的是,我目前还没有权限来构建一个完整的操作系统映像,所以我需要以某种方式破解它。
嵌入式系统运行的是汽车级Linux (Halibu8.0.0)。
sa8155:/etc# cat os-release
ID="auto"
NAME="auto"
VERSION="8.0.0 (halibut)"
VERSION_ID="8.0.0"
PRETTY_NAME="auto 8.0.0 (halibut)"
sa8155:/etc# Linux内核4.14.146
>adb shell
sa8155:~# uname -srm
Linux 4.14.146 aarch64我不确定安装了哪个版本的glibc,因为系统目前没有开发工具:
sa8155:~# ldd --version
-sh: ldd: not found
sa8155:~# lsof -p $ | grep libc | awk ' { print $NF" --version"; } ' | sh
-sh: lsof: not found
sa8155:~# 如果我能够安装包管理器,我首先要做的就是安装开发工具。
此外,我也不确定debian包管理器可能有任何其他依赖项。
发布于 2020-05-16 23:48:24
在不同的发行版上安装dpkg,以管理其他地方构建的软件,听起来并不是一个好主意。这将是充满二进制兼容性问题和微妙的错误,因为这将相当于使用dpkg与-强制-所有和无视任何依赖信息。
即使是将dpkg作为一个覆盖在预先存在的二进制“发行版”(如macOS上的Fink )之上的项目,也确实构建了它们所针对的macOS系统上的所有覆盖包,并注入幻影依赖项来表示基本系统软件。
也许你应该做的是用debootstrap --arch=arm64 - foreign创建一个外域arm64 chroot,然后将其解压缩,最后在该设备上完成第二阶段的解举,以便在该系统中获得一个实际的、正确的Debian,并提供一个功能依赖系统。
https://unix.stackexchange.com/questions/586695
复制相似问题