我的机器Ubuntu 16.04.3 LTS x86_64。 我编译了u-boot-2017.11,我收到了错误。
u-boot-2017.11$ export ARCH=arm
u-boot-2017.11$ export CROSS_COMPILE=/opt/toolchains/gcc-linaro-4.9.4-2017.01-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
u-boot-2017.11$ make geekbox_defconfig
HOSTCC scripts/basic/fixdep
/lib/ld-linux-armhf.so.3: No such file or directory
scripts/Makefile.host:99: recipe for target 'scripts/basic/fixdep' failed
make[1]: *** [scripts/basic/fixdep] Error 255
Makefile:399: recipe for target 'scripts_basic' failed
make: *** [scripts_basic] Error 2
我尝试查找并安装缺失的软件包,但它已准备好安装。
u-boot-2017.11$ dpkg -S ld-linux-armhf.so
libc6-armhf-cross: /usr/arm-linux-gnueabihf/lib/ld-linux-armhf.so.3
u-boot-2017.11$ sudo apt-get install libc6-armhf-cross
Reading package lists... Done
Building dependency tree
Reading state information... Done
libc6-armhf-cross is already the newest version (2.23-0ubuntu3cross1).
0 upgraded, 0 newly installed, 0 to remove and 9 not upgraded.
我该如何解决?请。
答案 0 :(得分:0)
在安装libc6-armhf-cross后
sudo ln -s /usr/arm-linux-gnueabihf/lib/ld-linux-armhf.so.3 /usr/lib/ld-linux-armhf.so.3
或更新库路径
答案 1 :(得分:0)
问题在于您没有arm库,一个快速且有用的解决方案将是-static。 例如:
$ arm-linux-gnueabihf-gcc -static -o name program.s
$ qemu-arm name