开发环境 VMware12, Ubuntu 16.04 64 bit
在VMware中安装Ubuntu,用户名:xilinx-arm 密码:root
step1.VMware Tools问题
不知道什么原因,VMware自动安装ubuntu后,VMware Tools没有正确安装。这在我的笔记本上是直接OK的,就说一下怎么重新安装吧。
首先确保Ubuntu虚拟机是打开的,在VMware Workstation的菜单栏点击“虚拟机”-->“重新安装 VMware Tools”,然后在虚拟机中会弹出一个光驱设备。
mkdir /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
cd /tmp
#若/tmp文件夹下有vmware-tools-distrib文件夹,需要删除
tar zxpf /mnt/cdrom/VMwareTools-x.x.x-yyyy.tar.gz
umount /dev/cdrom
cd vmware-tools-distrib
./vmware-install.pl
接下来就会安装VMware Tools了,这之中有些选项,能选yes的都选yes。关闭虚拟机,重新启动,这样VMware Tools就安装好了。
终于可以开心的Windows--Linux互拖文件了。
step2.更换apt-get更新源
默认的美国源下载起来太慢了,超费时间而且不稳定。直接把apt-get的源换成阿里云的,速度超赞。
sudo su
cd /etc/apt
cp sources.list sources.list1
gedit sources.list1
删除文件里的所有内容,复制下面的所有文本到里面。
deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb http://mirrors.aliyun.com/ubuntu/ xenial multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates multiverse
deb http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-backports main restricted universe multiverse #Added by software-properties
deb http://archive.canonical.com/ubuntu xenial partner
deb-src http://archive.canonical.com/ubuntu xenial partner
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main restricted multiverse universe #Added by software-properties
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-security multiverse
保存并退出,运行apt-get update。
apt-get update
step3.安装petalinux需要的依赖库
首先是官方手册ug1144的说明,必须安装的一些32位依赖库。
apt-get install tofrodos:i386
apt-get install iproute2:i386
apt-get install gawk:i386
apt-get install gcc:i386
apt-get install git:i386
apt-get install make:i386
apt-get install net-tools:i386
apt-get install libncurses5-dev:i386
apt-get install zlib1g-dev:i386
apt-get install libssl-dev:i386
apt-get install flex:i386
apt-get install bison:i386
apt-get install libselinux1:i386
然后是一些可能会导致不能正常安装petalinux,或是编译时出现问题的依赖库。趁早都直接安装好吧。
#在运行petalinux-config -c kernel出现错误,需要提前安装下面两个库
apt-get install libncurses5 libncurses5-dev
#编译时会出现错误arm-xilinx-linux-gnueabi-gcc: Command not found,需要安装下面三个库
apt-get install libc6:i386
apt-get install libstdc++6:i386
apt-get install zlib1g:i386
#安装petalinux时出现错误,提示缺少zlib和openssl,需要安装下面一个库
apt-get install libssl-dev
#安装petalinux时出现警告,提示No tftp server found - please refer to "PetaLinux SDK Installation Guide" for its impact and solution,需要安装下面3个库
apt-get install tftpd tftp openbsd-inetd
gedit /etc/inetd.conf
#在文件中增加以下内容
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /tftproot
#保存并退出
mkdir /tftproot
chmod 777 /tftproot
/etc/init.d/openbsd-inetd restart
netstat -an | more | grep udp
#看到有如下输出,即表示tftp安装成功
#udp 0 0 0.0.0.0:69 0.0.0.0:*
至此,依赖库就安装完成了。
step4.安装petalinux
前面的都准备好后,同时也从官网下载好petalinux-v2015.4-final-installer-dec.run安装包
mkdir -p /home/xilinx-arm/PetaLinux/package
cd /home/xilinx-arm/PetaLinux/package
从Windows中直接把petalinux-v2015.4-final-installer-dec.run拖拽到Linux的package文件夹。
mkdir -p /opt/pkg/petalinux
./petalinux-v2015.4-final-installer-dec.run /opt/pkg/petalinux
安装过程中有3个许可,都需要同意。安装成功后,打印的log如下图。
ug1144中说了,所用到的/bin/sh命令都需要是bash的,而Ubuntu默认的/bin/sh是dash的,所以直接把原本的删除,连接/bin/sh到bash。
cp /bin/sh /bin/sh1
rm /bin/sh
ln -s /bin/bash /bin/sh
ls -al /bin/sh
#会看到打印信息
#lrwxrwxrwx 1 root root 9 Dec 8 14:59 /bin/sh -> /bin/bash
PetaLinux就算是安装成功了。每次开机使用petalinux时,要在命令行输入:
source /opt/pkg/petalinux/petalinux-v2015.4-final/settings.sh
echo $PETALINUX
#会看到打印信息
#/opt/pkg/petalinux/petalinux-v2015.4-final
这样就可以在命令行中使用petalinux的各种命令了。
待改进:
每次重新启动系统后都需要重新执行source /opt/pkg/petalinux/petalinux-v2015.4-final/settings.sh,把这个命令直接在系统启动时运行就好了。