我想使用模式在ARM64 Kali上运行x86_64 Go二进制文件。
我找到aarch64-linux-musl-cross了。
~$ wget https://musl.cc/aarch64-linux-musl-cross.tgz
~$ tar -xvf aarch64-linux-musl-cross.tgz然后,我使用~/aarch64-linux-musl-cross/bin/aarch64-linux-musl-gcc编写了一个简单的hello程序。正如我所希望的那样。
~/go_projects/bin$ file hello
hello: ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-musl-aarch64.so.1, Go BuildID=-37pQ_4dEsp4pnAgj4QV/0unDR_0nE-A-DsF1SfKd/-8CRGAArG5J0XNspP2M-/u6ChmkaiRo9qoxEE15eo, not stripped但是,由于某种原因,解释器~/aarch64-linux-musl-cross/aarch64-linux-musl/lib/ld-musl-aarch64.so.1是到/lib/libc.so的坏链接。
我有一个文件/usr/aarch64-linux-gnu/lib/libc.so,但它只是一个文本文件。
~$ file /usr/aarch64-linux-gnu/lib/libc.so
/usr/aarch64-linux-gnu/lib/libc.so: ASCII text
~$ cat /usr/aarch64-linux-gnu/lib/libc.so
/* GNU ld script
Use the shared library, but some functions are only in
the static library, so try that secondarily. */
OUTPUT_FORMAT(elf64-littleaarch64)
GROUP ( /usr/aarch64-linux-gnu/lib/libc.so.6 /usr/aarch64-linux-gnu/lib/libc_nonshared.a AS_NEEDED ( /usr/aarch64-linux-gnu/lib/ld-linux-aarch64.so.1 ) )ld-musl-aarch64.so.1应该指向的链接是什么?
发布于 2020-11-18 05:05:16
哇,我发了这个帖子后就找到了答案.
sudo dpkg --add-architecture arm64
sudo apt update
sudo apt install -y --no-install-recommends musl:arm64
ln -f -s /lib/aarch64-linux-musl/libc.so ~/aarch64-linux-musl-cross/aarch64-linux-musl/lib/ld-musl-aarch64.so.1https://unix.stackexchange.com/questions/620205
复制相似问题