如果希望完整的将petalinux环境搭建完成,建议一定要按照下面三个大步骤进行安装,不要打乱顺序。其中第一阶段主要是ubuntu环境的搭建及软件的下载;第二阶段是安装petalinux需要的各种库文件,为下一步真正安装做准备;第三步骤才是真正的安装及验证。如果第二阶段的库没有安装完整那么安装petalinux很可能失败,安装过N次的人的血泪之言~

—-说明

博客参考:http://www.cnblogs.com/vacajk/p/6146146.html,博客园这位博客已经写得很好了,自己在它的基础上修改了几点。希望新手们看到这篇博客能够顺利安装成功。
主要包括:
1. apt-get的源换成阿里云通过系统设置即可
2. lib32bz2-1.0库安装失败,修改为libbz2-1.0:i386
3. 系统启动加载

petalinux2015.4以及2016.2必须使用root权限安装,安装路径在/opt下。
这里以2015.4版本安装示例说明,2016.2版本也可参考本次步骤安装,仅仅路径标识和版本不同(替换第三步骤为第五步骤)。

一、安装环境

①虚拟机的安装及环境配置

1.1 VMware安装Ubuntu 15.10(64位),注意磁盘空间要分得大一点。

这里写图片描述
根据ug1144-petalinux-tools-reference-guide手册,磁盘要求5G以上,这里建议虚拟机给ubuntu磁盘空间大于30G。

1.2 安装VM-Tools,设置windows和虚拟机的共享文件夹为space。

测试:利用指令cd /mnt/hgfs/切换目录,ls查看
这里写图片描述
如果看到文件夹space说明安装成功。
小提示:VM-Tools还可以用来切换ubuntu到全屏哦。

1.3 修改软件更新源为阿里云。

自动检测升级
系统设置->软件与更新,修改服务器站点
这里写图片描述

1.4 使用下面指令更新源和升级各种库。

sudo apt-get update
sudo apt-get upgrade

提示:upgrade表示真正升级,如果磁盘空间不是很大,不必执行此条命令,仅进update即可。
至此,ubuntu的整体环境已经搭建完成了,下面开始去官网下载软件吧~

②petalinux的下载

1.5 在Xilinx 官网下载petalinux 2015.4,网址如下

http://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools/2015-4.html
下载PetaLinux 2015.4 Installer和 Avnet-Digilent-ZedBoard BSP
下载完成后,将petalinux-v2015.4-final-installer-dec.run和Avnet-Digilent-ZedBoard-v2015.4-final.bsp拷贝到共享文件夹space中
这样根据1.2的方法,即可通过linux访问到安装包。

二、安装petalinux库
2.1 安装各种库文件,以及32位依赖库

注意,手册上要求安装32位依赖库lib32bz2-1,但是安装失败,可能是官方库已经修改了它的名字为:libbz2-1.0:i386,i386表示是32位的。
自己已经验证过,复制粘贴下面命令即可。

sudo apt-get install build-essential 
sudo  apt-get  install  vim
sudo apt-get install tofrodos  iproute2 gawk
sudo apt-get install gcc git make
sudo apt-get install net-tools  libncurses5-dev  tftpd
sudo apt-get install zlib1g-dev libssl-dev  flex bison libselinux1

这里,自己将重要的安装包截图下来,供读者对照。
第3条命令
3
第4条命令
这里写图片描述
第5条命令
这里写图片描述
第6条命令
这里写图片描述

2.2 安装额外的库

称为额外的库是因为手册上并没有写全,这里参考网络各种记录,将额外有可能需要的库全部安装。如果你是新手,请直接复制粘贴命令即可。
1)不知道是否有用,还是装上吧。

sudo apt-get install lib32z1 lib32ncurses5 libbz2-1.0:i386 lib32stdc++6

2)下面这些参考博客园博主的,主要安装一些库(避免不必要的麻烦),进而安装tftp服务器。

#安装petalinux时出现错误,提示缺少zlib和openssl,需要安装下面一个库
sudo apt-get install libssl-dev

#安装petalinux时出现警告,提示No tftp server found - please refer to "PetaLinux SDK Installation Guide" for its impact and solution,需要安装下面3个库,记得root权限
sudo  apt-get install tftp-hpa tftpd-hpa xinetd

sudo mkdir /tftpboot
sudo chmod -R 777 /tftpboot

sudo gedit /etc/default/tftpd-hpa
#在文件中增加以下内容
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_DIRECTORY="/tftpboot"    #服务器目录,需要设置权限为777
TFTP_OPTIONS="-l-c -s"
#保存并退出
sudo  service tftpd-hpa restart
netstat -an | more | grep udp
#看到有如下输出,即表示tftp安装成功
#udp        0      0 0.0.0.0:69              0.0.0.0:*

3)安装另外一些库

补充库(root权限):
#在运行petalinux-config -c kernel出现错误,需要提前安装下面两个库
sudo apt-get install libncurses5 libncurses5-dev
#编译时会出现错误arm-xilinx-linux-gnueabi-gcc: Command not found,需要安装下面三个库
sudo apt-get install libc6:i386
sudo apt-get install libstdc++6:i386
sudo apt-get install zlib1g:i386
sudo apt-get install wget diffstat chrpath socat xterm autoconf libtool unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev
2.3 修改bash

ug1144中说了,所用到的/bin/sh命令都需要是bash的,而Ubuntu默认的/bin/sh是dash的,使用下面指令

sudo dpkg-reconfigure dash

并在弹出界面选“否”来禁用dash,选择bash

ls -al /bin/sh

会看到打印信息
lrwxrwxrwx 1 root root 9 Dec 8 14:59 /bin/sh -> /bin/bash

三、安装petalinux
3.1 安装

首先创建安装目录,之后将安装在该文件夹下,记住root权限安装(仅针对15,16.2版本)

mkdir -p /opt/pkg/petalinux
sudo ./petalinux-v2015.4-final-installer-dec.run /opt/pkg/petalinux

安装过程中总共只有3个y,要小心。
每当选择一个y,小心按q表示关闭查看license文件,此处不要按Enter键终止安装!
这里写图片描述

3.2 验证

PetaLinux就算是安装成功了。每次开机使用petalinux时,要在命令行输入:

source /opt/pkg/petalinux/petalinux-v2015.4-final/settings.sh
echo $PETALINUX

会看到打印信息
/opt/pkg/petalinux/petalinux-v2015.4-final
这样就可以在命令行中使用petalinux的各种命令了。
这里写图片描述

四、部分改进
4.1 关闭统计信息

Xilinx获取统计信息,使用如下指令关闭统计信息

petalinux-util –webtalk off

4.2 系统自启动

该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取

gedit ~/.bashrc

在末尾添加:

source /opt/pkg/petalinux/petalinux-v2015.4-final/settings.sh

注意:此处自己以root身份添加,只有当进入root权限时,会显示如3.2步骤显示的功能,在普通用户模式下无作用。(当然也可以添加到普通用户的.bashrc文件中)

至此,整个工程就安装完成了。

五、关于2016.2版本的指令参考

2015.4和2016.2版本前两个步骤是相同的,这里额外提供2016.2版本第三步骤的指令。

//root权限安装
sudo  mkdir  /opt/pkg/petalinux1602
sudo ./petalinux-v2016.2-final-installer.run /opt/pkg/petalinux1602

//验证
source /opt/pkg/petalinux1602/petalinux-v2016.2-final/settings.sh
echo $PETALINUX
#会看到打印信息
#/opt/pkg/petalinux/petalinux-v2016.2-final

//开机启动
gedit ~/.bashrc
在末尾添加:
source /opt/pkg/petalinux1602/petalinux-v2016.2-final/settings.sh

附图:
这里写图片描述


花费了一天的时间终于把这个博客整理完毕了,期间参考了网络上大量比较和官方手册,希望给看到的人一些帮助吧,和大家一起学习。

如果你比较熟练,直接参考如下命令(shell命令)

#!/bin/bash
sudo apt-get install build-essential 
sudo  apt-get  install  vim
sudo apt-get install tofrodos  iproute2 gawk
sudo apt-get install gcc git make
sudo apt-get install net-tools  libncurses5-dev  tftpd
sudo apt-get install zlib1g-dev libssl-dev  flex bison libselinux1

#tftp
apt-get install tftp-hpa tftpd-hpa xinetd
#3)
sudo apt-get install lib32z1 lib32ncurses5 libbz2-1.0:i386 lib32stdc++6
sudo apt-get install libssl-dev
sudo apt-get install libncurses5 libncurses5-dev
sudo apt-get install libc6:i386
sudo apt-get install libstdc++6:i386
sudo apt-get install zlib1g:i386
sudo apt-get install wget diffstat chrpath socat xterm autoconf \
libtool unzip texinfo zlib1g-dev gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev

sudo apt-get install tofrodos  iproute2 gawk
sudo apt-get install gcc git make

sudo apt-get install xvfb

sudo apt-get install net-tools  libncurses5-dev  tftpd
sudo apt-get install zlib1g-dev zlib1g-dev:i386 libssl-dev  flex bison libselinux1
sudo apt-get install gnupg wget diffstat chrpath socat xterm
sudo apt-get install autoconf libtool tar unzip texinfo zlib1g-dev \
gcc-multilib build-essential libsdl1.2-dev libglib2.0-dev
sudo apt-get install screen pax gzip tar

#config tftp 
#config dash
GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐