在arm64嵌入式Linux上出现“Exec格式错误”

在arm64嵌入式Linux上出现“Exec格式错误”

我在嵌入式平台上有一个瑞萨 v3h ARM v8 处理器。其上的 yocto Linux 不支持sshd所以我尝试在 rootfs 中安装二进制文件。我从下载了二进制文件这里并将其复制到 rootfs 中。当我尝试运行它时,出现此错误

root@v3h:/usr/bin# sshd
-sh: /usr/bin/sshd: cannot execute binary file: Exec format error

为了确保该二进制文件实际上适用于arm64,我这样做了 -

readelf -h sshd

输出是这样的 -

ELF Header:
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
  Class:                             ELF64
  Data:                              2's complement, little endian
  Version:                           1 (current)
  OS/ABI:                            UNIX - System V
  ABI Version:                       0
  Type:                              DYN (Shared object file)
  Machine:                           AArch64

以下是 ssh 和 sshd 的权限。ssh顺便说一句,效果很好。

lrwxrwxrwx    1 1000     1000            23 Jan 28 11:27 ssh -> /usr/sbin/dropbearmulti
-rwxrwxr-x    1 1000     1000       2734032 Apr  2  2019 sshd

我该如何解决这个问题?

编辑:

内核信息-

root@v3h:/usr/bin# uname -a
Linux v3h-p708 4.9.0-yocto-standard #7 SMP PREEMPT Mon Jan 28 13:14:31 MSK 2019 aarch64 GNU/Linux

相关内容