安装依赖

下面是arm/mips在ubuntu 22.04上常用的依赖项

sudo apt-get update 
sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversion libncurses5-dev ncurses-term zlib1g-dev subversion git-core gawk asciidoc libz-dev zlib1g-dev libssl-dev pkg-config unzip zlib1g-dev libc6-dev libncurses5-dev gawk sharutils curl libxml-parser-perl ocaml-nox ocaml ocaml-findlib libssl-dev libfdt-dev quilt device-tree-compiler u-boot-tools lsb-core lib32z1 cmake mtd-utils python2 python3-pip cryptsetup-bin
curl https://bootstrap.pypa.io/pip/2.7/get-pip.py -o get-pip.py
sudo python2 get-pip.py
pip2 install pycryptodome

配置环境变量

获取你需要使用的交叉编译工具链,然后将工具链的bin目录添加到环境变量里

  1. $ vim ~/.bashrc
    export PATH=$PATH:path/to/bin #path/to记得修改为真正的目录,如果有多个工具链,可以用 ':'隔开,也可以另起一行
    export PS1='$(date +%H:%M:%S) \[\033[01;33m\]\W\[\033[36m\] $' #可选项,修改后终端提示符显示:时间+当前目录+$ (14:37:31 ~ $)
  2. $ source ~/.bashrc
    这个命令使上面的修改立即生效
  3. 检查环境变量是否生效
    #假设你的工具链是arm-linux-
    $ arm-linux-gcc -v #执行这个命令,如果有版本号的回显,说明工具链已成功添加到环境变量

其他个性化配置

虚拟机开机自动挂载共享文件夹

$ sudo vim /ext/fstab
.host:/share /mnt/hgfs fuse.vmhgfs-fuse allow_other,defaults 0 0

安装ssh=server

sudo apt-get install openssh-server
sudo systemctl status ssh
sudo systemctl enable ssh

windows ssh免密登录

$ cat windows/path/id_isa.pub >> ubuntu/~/.ssh/authorized_keys #指将windows下的key复制到ubuntu目录下

安装nfs-server

#安装
sudo apt install nfs-kernel-server
sudo mkdir /nfsroot

#修改配置文件
echo "/home/kaikai/nfsshare *(rw,sync,no_root_squash)" >> /etc/exports
# /nfsroot:指定/nfsroot为nfs服务器的共享目录
# *:允许所有的网段访问,也可以使用具体的IP
# rw:挂接此目录的客户端对该共享目录具有读写权限
# sync:资料同步写入内存和硬盘
# no_root_squash:root用户具有对根目录的完全管理访问权限
# no_subtree_check:不检查父目录的权限

#重启服务
sudo service nfs-kernel-server restart

#检查共享目录
showmount -e localhost

#客户端挂载
mount -t nfs -o nolock 192.168.2.183:/nfsroot /nfsroot
-t:挂载的文件系统类型
-o nolock:不要文件锁
192.168.xxx.xxx:/nfsroot:nfs服务器ip:服务器共享目录
nfsroot:客户端已存在的目录