快速搭建mips环境

2019-11-17  本文已影响0人  E4x

系统环境为Ubuntu16.04,软件源为阿里云

0x01 安装qemu、libguestfs

sudo apt-get update
sudo apt-get install qemu libguestfs-tools

0x02 安装mips交叉编译

sudo apt-get install emdebian-archive-keyring 
sudo apt-get install linux-libc-dev-mips-cross 
sudo apt-get install libc6-mips-cross libc6-dev-mips-cross 
sudo apt-get install binutils-mips-linux-gnu gcc-mips-linux-gnu 
sudo apt-get install g++-mips-linux-gnu

此交叉编译工具应该已经完成了,可以测试一下

best@E4x:~/mips$ mips-linux-gnu-gcc --version
mips-linux-gnu-gcc (Ubuntu 5.4.0-6ubuntu1~16.04.9) 5.4.0 20160609
Copyright (C) 2015 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.

但是实际运行时却报错⬇️

best@E4x:~/mips$ qemu-mips ./mips_test 
/lib/ld.so.1: No such file or directory

查资料后发现这个交叉编译工具默认会到/lib目录下找ld和libc,添加软链接到/usr/mips-linux-gnu/lib/目录下可解决

 sudo ln -s /usr/mips-linux-gnu/lib/ld.so.1 /lib/ld.so.1
 sudo ln -s /usr/mips-linux-gnu/lib/libc.so.6 /lib/libc.so.6

最后测试可以运行

best@E4x:~/mips$ file mips_test 
mips_test: ELF 32-bit MSB executable, MIPS, MIPS32 rel2 version 1 (SYSV), dynamically linked, interpreter /lib/ld., for GNU/Linux 3.2.0, BuildID[sha1]=90ec348a4bff3e0e9d2a20cb3b68aa3ed5dbb6d7, not stripped
best@E4x:~/mips$ qemu-mips ./mips_test 
Hello Mips
上一篇下一篇

猜你喜欢

热点阅读