最全的Linux教程,Linux从入门到精通
======================
-
linux从入门到精通(第2版)
-
Linux系统移植
-
Linux驱动开发入门与实战
-
LINUX 系统移植 第2版
-
Linux开源网络全栈详解 从DPDK到OpenFlow
第一份《Linux从入门到精通》466页
====================
内容简介
====
本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜爱的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。
本书适合广大Linux初中级用户、开源软件爱好者和大专院校的学生阅读,同时也非常适合准备从事Linux平台开发的各类人员。
需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
移植linux之petalinux
之前一篇博文中,提到了一种通用的传统移植方式,将linux移植到ZYNQ中的ARM芯片中。本文将针对xilinx的专用开发环境petalinux,进行入门和开发,本文petalinux的运行环境依然在虚拟机的linux系统里,即将体验petalinux相对于传统方式的便捷和强大之处
一、安装petalinux
-
-1.安装虚拟机,在虚拟机里安装linux系统(ubuntu16)
- 虚拟机里磁盘尽量留大点,建议60G,我的是80G
sudo passwd
命令,设置超级用户su时的密码- 建议安装VMware Tools
- 开发工具:vivado2017.1(Windows下) + petalinux 2017.1(Linux下)
-
0.更新apt-get(可选,加速用,同传统方式移植那篇文章的第二节)
-
1.安装petalinux的依赖环境
安装petalinux的必要依赖环境,直接复制粘贴下面的命令行到shell中,系统自动下载安装下面的工具:
sudo apt-get install build-essential vim tofrodos \
iproute2 gawk gcc git make net-tools zlib1g-dev \
libssl-dev flex bison libselinux1 libncurses5-dev \
tftpd lib32z1 lib32ncurses5 libbz2-1.0:i386 \
lib32stdc++6 xvfb chrpath socat autoconf libtool
-
2.修改/bin/sh
shell中输入:dpkg-reconfigure dash
,在出现的界面中选择‘否’ -
3.下载petalinux
去官网下载petalinux-v2017.1-final-installer.run
(文件8个G,上传不了) -
4.安装petalinux
- 在一个用户目录下(我的是:
home/hlf/mnt
),用鼠标右键,新建一个文件夹petalinux
- 在普通用户下(非root模式下,即命令行是:
hlf@hlf-virtual-machine:~/mnt$
这样的),shell中输入命令:./petalinux-v2017.1-final-installer.run ./petalinux
- 经过漫长的等待,安装到一半的时候,提醒查看许可,按回车查看,按q退出,退出后输入y,回车,如此重复三次,才开始正式安装(这个步骤要很小心,如果没有输入y,就回车,就要重新了)
- 安装的时候提示,提示有几个库没装,不过没关系,等petalinux安装完之后,再补也不迟,静候一直到安装完毕
- 在一个用户目录下(我的是:
-
5.补一些库的安装
- 懒人直接只看这一点即可(可以跳过下面两点),把下面命令粘贴到shell中回车即可:
apt-get install texinfo gcc-multilib libsdl1.2-dev libglib2.0-dev zlib1g:i386 libncurses5 libncurses5-dev libc6:i386 libstdc++6:i386 zlib1g:i386 libssl-dev tftpd tftp openbsd-inetd
- 先安装刚刚安装时,提示缺少的库:
apt-get install texinfo gcc-multilib libsdl1.2-dev libglib2.0-dev zlib1g:i386
-
安装一些之后需要的库,全都安装了避免麻烦:
- 在运行petalinux-config -c kernel会出现错误,需安装:
apt-get install libncurses5 libncurses5-dev
- 编译时可能会出现错误arm-xilinx-linux-gnueabi-gcc: Command not found,需安装:
apt-get install libc6:i386 libstdc++6:i386 zlib1g:i386
- 提示缺少zlib和openssl,需安装:
apt-get install libssl-dev
- 出现警告(警告而已,强迫症可以处理一下),提示No tftp server found - please refer to “PetaLinux SDK Installation Guide” for its impact and solution,需安装:
apt-get install tftpd tftp openbsd-inetd
,安装完成后,编辑一下**/etc/inetd.conf**里的东西:
直接shell中输入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
命令,以确定成功(打印出udp 0 0 0.0.0.0:69 0.0.0.0:*
)
- 在运行petalinux-config -c kernel会出现错误,需安装:
-
6.验证是否安装成功
source /home/hlf/mnt/petalinux/settings.sh
成功定位不报错的话,基本是成功了的
echo $PETALINUX
命令行会打印出安装路径/home/hlf/mnt/petalinux
二、搭建硬件环境
- 1.新建工程,选择对应的芯片型号,并新建一个 BD 原理图文件(命名为system),然后添加一个ZYNQ Processing system的IP核,并设置好与硬件相符合的PS和PL时钟以及DDR型号
这个步骤同传统方式移植那篇文章 - 2.为了使PetaLinux正常的运行,需要分配一些硬件外设资源
1.TTC模块**(必须)** ,如果有多个,Linux内核将会使用第一个。
2.外部32MB存储空间**(必须)**
最全的Linux教程,Linux从入门到精通
======================
-
linux从入门到精通(第2版)
-
Linux系统移植
-
Linux驱动开发入门与实战
-
LINUX 系统移植 第2版
-
Linux开源网络全栈详解 从DPDK到OpenFlow
第一份《Linux从入门到精通》466页
====================
内容简介
====
本书是获得了很多读者好评的Linux经典畅销书**《Linux从入门到精通》的第2版**。本书第1版出版后曾经多次印刷,并被51CTO读书频道评为“最受读者喜爱的原创IT技术图书奖”。本书第﹖版以最新的Ubuntu 12.04为版本,循序渐进地向读者介绍了Linux 的基础应用、系统管理、网络应用、娱乐和办公、程序开发、服务器配置、系统安全等。本书附带1张光盘,内容为本书配套多媒体教学视频。另外,本书还为读者提供了大量的Linux学习资料和Ubuntu安装镜像文件,供读者免费下载。
本书适合广大Linux初中级用户、开源软件爱好者和大专院校的学生阅读,同时也非常适合准备从事Linux平台开发的各类人员。
需要《Linux入门到精通》、《linux系统移植》、《Linux驱动开发入门实战》、《Linux开源网络全栈》电子书籍及教程的工程师朋友们劳烦您转发+评论
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!