当前位置: 首页 > news >正文

如何下载js做的网站做网站需要学习多久

如何下载js做的网站,做网站需要学习多久,企业员工培训总结,网站的图片要会员才能下载怎么做目录何为buildroot#xff1f;buildroot 简介buildroot 下载buildroot 构建根文件系统配置buildroot编译buildrootbuildroot 根文件系统测试buildroot 第三方软件和库的配置buildroot 下的busybox 配置busybox 配置busybox 中文字符的支持编译busybox根文件系统测试前面我们学… 目录何为buildrootbuildroot 简介buildroot 下载buildroot 构建根文件系统配置buildroot编译buildrootbuildroot 根文件系统测试buildroot 第三方软件和库的配置buildroot 下的busybox 配置busybox 配置busybox 中文字符的支持编译busybox根文件系统测试前面我们学习了如何使用busybox 来构建根文件系统但是busybox 构建的根文件系统不齐全很多东西需要我们自行添加比如lib 库文件。在我们后面的驱动开发中很多第三方软件也需要我们自己去移植这些第三方软件有很多又依赖其他的库文件导致移植过程非常的繁琐。本章我们来学习一下另外一种实用的根文件系统构建方法那就是使用buildroot 来构建根文件系统。 何为buildroot buildroot 简介 在《第三篇系统移植篇》我们最后讲解了如何使用busybox 构建文件系统busybox 仅仅只是帮我们构建好了一些常用的命令和文件像lib 库、/etc 目录下的一些文件都需要我们自己手动创建而且busybox 构建的根文件系统默认没有用户名和密码设置。在后续的实验中我们还要自己去移植一些第三方软件和库比如alsa、iperf、mplayer 等等。那么有没有一种傻瓜 式的方法或软件它不仅包含了busybox 的功能而且里面还集成了各种软件需要什么软件就选择什么软件不需要我们去移植。答案肯定是有的buildroot 就是这样一种工具buildroot比busybox 更上一层楼buildroot 不仅集成了busybox而且还集成了各种常见的第三方库和软件需要什么就选择什么就跟我们去吃自助餐一样想吃什么就拿什么。buildroot 极大的方便了我们嵌入式Linux 开发人员构建实用的根文件系统。 从busybox 开始一步一步的构建根文件系统适合学习、了解根文件系统的组成但是不适合做产品(主要是自己构建的话会有很多不完善、没有注意到的细节)。buildroot 会帮我们处理好各种细节根文件系统也会更加的合理、有效。因此在做产品的时候推荐大家使用buildroot 来构建自己的根文件系统当然了类似buildroot 的软件还有很多比如后面要讲的yocto。 buildroot 和uboot、Linux Kernel 很类似我们需要到其官网上下载源码然后对其进行配置比如设置交叉编译器、设置目标CPU 参数等最主要的就是选择所需要的第三方库或软件。一切配置好以后就可以进行编译编译完成了以后就会在一个文件夹里面存放好编译结果也就是根文件系统。 buildroot 下载 buildroot 源码肯定是要从buildroot 官网下载官网地址为https://buildroot.org/打开以后的官网界面如图A1.1.2.1 所示 点击图A1.1.2.1 中的“DOWNLOAD”按钮即可打开buildroot 的下载界面如图A1.1.2.2所示 可以看出在写本教程的时候最新的LTS(长期支持版)版buildroot 为2019.02.6分为.gz和.bz2 两种压缩格式这里我就使用右侧的.bz2 压缩格式的源码选中以后下载即可。我们已经将其放到了开发板光盘中路径为1、例程源码-》8、buildroot 源码-》buildroot-2019.02.6.tar.bz2 一切准备好以后就可以使用buildroot 构建根文件系统了。 buildroot 构建根文件系统 配置buildroot 将buildroot 源码buildroot-2019.02.6.tar.bz2 拷贝到ubuntu 中也就是我们前面创建的tool目录下。拷贝完成以后对其进行解压命令如下 tar -vxjf buildroot-2019.02.6.tar.bz2解压完成以后就会得到一个名为“buildroot-2019.02.6”的目录此目录就是我们解压得到的buildroot 源码进入到此目录中此目录下的文件如图A1.2.1.1 所示 buildroot 和uboot、Linux kernel 一样也支持图形化配置输入如下命令即可打开图形化配置界 make menuconfig打开以后的图形化配置界面如图A1.2.1.2 所示 接下来我们就依次配置buildroot配置完成以后就可以进行编译了。 1、配置Target options 首先配置Target options 选项需要配置的项目和其对应的内容如下(“”号后面是配置项要选择的内容) Target options- Target Architecture ARM (little endian)- Target Binary Format ELF- Target Architecture Variant cortex-A7- Target ABI EABIhf- Floating point strategy NEON/VFPv4- ARM instruction set ARM配置完成以后如图A1.2.1.3 所示 2、配置Toolchain 此配置项用于配置交叉编译工具链也就是交叉编译器这里设置为我们自己所使用的交叉编译器即可。buildroot 其实是可以自动下载交叉编译器的但是都是从国外服务器下载的鉴于国内的网络环境强烈推荐大家设置成自己所使用的交叉编译器。需要配置的项目和其对应的内容如下 Toolchain- Toolchain type External toolchain- Toolchain Custom toolchain //用户自己的交叉编译器- Toolchain origin Pre-installed toolchain //预装的编译器- Toolchain path /usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf- Toolchain prefix $(ARCH)-linux-gnueabihf //前缀- External toolchain gcc version 4.9.x- External toolchain kernel headers series 4.1.x- External toolchain C library glibc/eglibc- [*] Toolchain has SSP support? (NEW) //选中- [*] Toolchain has RPC support? (NEW) //选中- [*] Toolchain has C support? //选中- [*] Enable MMU support (NEW) //选中Toolchain 下几个比较重要的选项需要说明一下如下所示 Toolchain设置为Custom toolchain表示使用用户自己的交叉编译器。 Toolchain origin设置为Pre-installed toolchain表示使用预装的交叉编译器。 Toolchain path设置自己安装的交叉编译器绝对路径buildroot 要用到。 Toolchain prefix设置交叉编译器前缀要根据自己实际所使用的交叉编译器来设置比如我们使用的是arm-linux-gnueabihf-gcc因此前缀就是$(ARCH)-linux-gnueabihf其中ARCH我们前面已经设置为了arm。 3、配置System configuration 此选项用于设置一些系统配置比如开发板名字、欢迎语、用户名、密码等。需要配置的项目和其对应的内容如下 System configuration- System hostname alpha_imx6ull //平台名字自行设置- System banner Welcome to alpha i.mx6ull //欢迎语- Init system BusyBox //使用busybox- /dev management Dynamic using devtmpfs mdev //使用mdev- [*] Enable root login with password (NEW) //使能登录密码- Root password 123456 //登录密码为123456在System configuration 选项中可以配置平台名字登录密码等信息。 4、配置Filesystem images 此选项配置我们最终制作的根文件系统为什么格式的配置如下 - Filesystem images- [*] ext2/3/4 root filesystem //如果是EMMC 或SD 卡的话就用ext3/ext4- ext2/3/4 variant ext4 //选择ext4 格式- [*] ubi image containing an ubifs root filesystem //如果使用NAND 的话就用ubifs对于I.MX6U 来说此选项不用配置因为我们是通过Mfgtool 工具将根文件系统烧写到开发板上的EMMC/SD 卡中烧写的时候需要自己对根文件系统进行打包。 5、禁止编译Linux 内核和uboot buildroot 不仅仅能构建根文件系统也可以编译linux 内核和uboot。当配置buildroot使能linux 内核和uboot 以后buildroot 就会自动下载最新的linux 内核和uboot 源码并编译。但是我们一般都不会使用buildroot 下载的linux 内核和uboot因为buildroot 下载的linux 和uboot官方源码里面会缺少很多驱动文件而且最新的linux 内核和uboot 会对编译器版本号有要求可能导致编译失败。因此我们需要配置buildroot关闭linux 内核和uboot 的编译只使用buildroot 来构建根文件系统首先是禁止Linux 内核的编译配置如下 - Kernel- [ ] Linux Kernel //不要选择编译Linux Kernel 选项如图A1.2.1.4 所示 接着禁止编译Uboot配置如下 - Bootloaders- [ ] U-Boot //不要选择编译U-Boot 选项如图A1.2.1.5 所示 6、配置Target packages 此选项用于配置要选择的第三方库或软件、比如alsa-utils、ffmpeg、iperf 等工具但是现在我们先不选择第三方库防止编译不下去先编译一下最基本的根文件系统如果没有问题的话再重新配置选择第三方库和软件。否则一口吃太多会容易撑着的编译出问题的时候都不知道怎么找问题。 编译buildroot 配置完成以后就可以编译buildroot 了编译完成以后buildroot 就会生成编译出来的根文件系统压缩包我们可以直接使用。输入如下命令开始编译 sudo make //注意一定要加sudo而且不能通过-jx 来指定多核编译buildroot 编译的时候会先从网上下载所需的软件源码有些软件源码可能下载不下来这个时候就需要我们自行处理这个后面会详细的讲解。 buildroot 编译过程会很耗时可能需要几个小时请耐心等待 buildroot 因为要从网上下载源码因此可能存在有些源码无法下载或下载很慢的情况比如如图A1.2.2.1 所示 可以看出图A1.2.2.1 中正在下载cmake-3.8.2.tar.gz 这个压缩包大小是7.2MB当前下载网速是1.6KB/S 需要用时71 分钟显然这是无法忍受的我们可以自行到https://cmake.org/files/v3.8/cmake-3.8.2.tar.gz 这个网站上去将cmake-3.8.2.tar.gz 这个源码下载下来然后拷贝到Ubuntu 中buildroot 源码目录下的dl 文件夹中dl 文件夹专用用于存放下载下 来的源码。 等待编译完成编译完成以后就会在buildroot-2019.02.6/output/images 下生成根文件系统如图A1.2.2.2 所示 从图A1.2.2.2 可以看出编译出来了多种格式的rootfs比如ext2、ext4、ubi 等。其中rootfs.tar 就是打包好的根文件系统我们就使用rootfs.tar 进行测试。在nfs 目录下新建一个名为buildrootfs 的文件夹然后将图A1.2.2.2 中的rootfs.tar 拷贝到buildrootfs 目录下并解压命令如下 cd /home/zuozhongkai/linux/nfs //进入到nfs 目录下 mkdir buildrootfs //创建buildrootfs 目录 cd buildrootfs //进入到buildrootfs 目录 cp ../../IMX6ULL/tool/buildroot-2019.02.6/output/images/rootfs.tar ./ //拷贝到rootfs.tar tar tar -vxf rootfs.tar //解压缩rootfs.tar rm rootfs.tar //删除rootfs.tar解压缩完成以后的buildrootfs 目录如图A1.2.2.3 所示 图A1.2.2.3 就是使用buildroot 编译出来的根文件系统我们可以通过nfs 挂载到开发板上然后对其进行测试。 buildroot 根文件系统测试 buildroot 制作出来的根文件系统已经准备好了接下来就是对其进行测试。测试方法也是通过nfs 挂载的方式启动uboot修改bootargs 环境变量设置nfsroot 目录为Ubuntu 中的buildrootfs 目录命令如下 setenv bootargs consoletty1 consolettymxc0,115200 root/dev/nfs nfsroot192.168.1.253: /home/zuozhongkai/linux/nfs/buildrootfs rw ip192.168.1.251:192.168.1.253:192.168.1.1:255.255. 255.0::eth0:off设置好以后启动系统进入根文件系统以后如图A2.2.3.1 所示 在图A2.2.3.1 中首先要进入到/lib/modules 目录但是默认没有因此需要我们自行创建此目录。buildroot 构建的根文件系统启动以后会输出我们前面设置的欢迎语“Welcome to alpha i.mx6ull”。然后需要输入用户名和密码用户名是“root”密码就是我们前面配置buildroot 的时候设置的“123456”。输入用户名和密码以后就可以进入系统中如图A2.2.3.2 所示 可以看出的buildroot 构建的根文件系统运行基本没有问题但是这个根文件系统是最简单的我们并没有在buildroot 里面配置任何第三方的库和软件接下来我们就配置buildroot使能一些常见的第三方软件。 buildroot 第三方软件和库的配置 我在前面学习的时候需要自行移植一些第三方的库和软件比如alsa-lib、alsa-utils 等等现在我们不需要自行移植这些第三方软件和库了可以直接在buildroot 里面配置使能。比如我们现在配置使能alsa-lib、alsa-utils 这两个软件和库。 1、使能alsa-lib 输入make menuconfig打开buildroot 配置界面配置路径如下 Target packages- Libraries- Audio/Sound- -*- alsa-lib --- 此配置项下的文件全部选中如图A1.3.1 所示 2、使能alsa-utils 接下来使能alsa-utils路径如下 Target packages- Audio and video applications- alsa-utils 此目录下的软件全部选中配置好以后如图A1.3.2 所示 等待编译完成就可以使用新的根文件系统进行测试了将buildroot/images/rootfs.tar 拷贝到nfs 目录下的buildroot 目录中然后重新解压。注意以前自己添加的文件并不会被删除掉的解压命令如下 tar -vxf rootfs.tar解压完成以后就可以使用alsa-utils 相关的软件了比如alsamixer想想我们曾经在第六十五章中自行移植alsa-utils 的时候那个过程叫一个复杂。通过buildroot 的话直接一个配置就可以搞定全部方便快捷大家可以自行尝试去配置使能一些其他的第三方库和软件。 buildroot 下的busybox 配置 busybox 配置 buildroot 在构建根文件系统的时候也是要用到busybox 的既然用到了busybox 那么就涉及到busybox 的配置。buildroot 会自动下载busybox 压缩包buildroot 下载的源码压缩包都存放在/dl 目录下在dl 目录下就有一个叫做“busybox”的文件夹此目录下保存着busybox 压缩包如图A1.4.1.1 所示 可以看出buildroot 下载的busybox 版本为1.29.3。要想编译busybox必须对图A1.4.1.1中的压缩包进行解压缩buildroot 将所有解压缩后的软件保存在/output/build 软件中我们可以在找到/output/build/busybox-1.29.3 这个文件夹此文件夹就是解压后的busybox 源码文件内容如图A1.4.1.2 所示 如果大家想要修改busybox 源码的话就直接在图A1.4.1.2 中找到相应的文件然后修改即可。我们现在是要配置buildroot 下的busybox因此肯定要打开busybox 的配置界面在buildroot下打开busybox 的配置界面输入如下命令 sudo make busybox-menuconfig输入以后就会打开buildroot 下的busybox 配置界面如图A1.4.1.3 所示 图A1.4.1.3 就是我们最熟悉的busybox 配置界面了大家想要配置什么就直接操作就行了或者参考第三十八章即可。 busybox 中文字符的支持 在第三十八章我们数过了busybox 对中文字符显示做了限制因此必须要修改相关的文件具体修改过程参考38.2.2 小节即可这里就不再赘述了。 编译busybox 配置好以后就可以重新编译buildroot 下的busybox进入到buildroot 源码目录下输入如下命令查看当前buildroot 所有配置了的目标软件包也就是packages sudo make show-targets结果如图A1.4.3.1 所示 图A1.4.3.1 中列出了当前buildroot 中所有使能了的packages 包其中就包括busybox如 果我们想单独编译并安装busybox 的话执行下面命令即可 sudo make busybox上述命令就会重新编译busybox。编译完成以后重新编译buildroot主要是对其进行打包输入如下命令 sudo make重新编译完成以后查看一下output/images 目录下rootfs.tar 的创建时间是否为刚刚编译的如果不是的话就删除掉rootfs.tar然后重新执行“sudo make”重新编译一下即可。最后我们使用新的rootfs.tar 启动Linux 系统。 根文件系统测试 buildroot 的根文件系统制作好以后就是测试工作了测试内容和第三十八章中一样这里就不赘述了。这里我们重点说一下另外一个问题我们使用构建的根文件系统启动以后会发现输入命令的时候命令行前面一直都是“#”如果我们进入到某个目录的话前面并不会显示当前目录路径如图A1.5.1 所示 从图A1.5.1 可以看出我们当前所处的目录是/etc但是前面的提示符一直是“#”这样不利于我们查看自己当前所处的路径。最好能像Ubuntu 一样可以指出当前登录的用户名主机名以及所处的目录如图A1.5.2 所示 我们现在就来设置实现图A1.5.2 中所示的效果。我们要先了解一下“PS1”这个环境变量PS1 用于设置命令提示符格式格式如下 PS1 ‘命令列表’命令列表中可选的参数如下 \! 显示该命令的历史记录编号。 \# 显示当前命令的命令编号。 \$ 显示$符作为提示符如果用户是root 的话则显示#号。 \\ 显示反斜杠。 \d 显示当前日期。 \h 显示主机名。 \n 打印新行。 \nnn 显示nnn 的八进制值。 \s 显示当前运行的shell 的名字。 \t 显示当前时间。 \u 显示当前用户的用户名。 \W 显示当前工作目录的名字。 \w 显示当前工作目录的路径我们打开/etc/profile 文件找到如下所示内容然后将其屏蔽掉 示例代码A1.5.1 /etc/profile 文件要屏蔽的内容 3 if [ $PS1 ]; then 4 if [ id -u -eq 0 ]; then 5 export PS1# 6 else 7 export PS1$ 8 fi 9 fi 上述代码就是原始的设置PS1 环境变量的配置代码就是它将命令提示符设置为了固定的“#”我们将其屏蔽掉然后输入如下所示内容 /etc/profile 添加的内容 PS1[\u\h]:\w$: export PS1第2 行就是设置PS1 环境变量格式就是 [userhostname]:currentpath$:设置好以后的/etc/profile 文件内容如图A1.5.3 所示 /etc/profile 文件修改完成以后重启开发板这个时候我们就如到某个目录的时候命令行就会有提示如图A1.5.4 所示 从图A1.5.4 可以看出命令提示符显示正常了完整的显示除了用户名、主机名和当前路径。至此buildroot 构建根文件系统就已经全部完成了当然了很多第三方软件本章并没有使能大家可以自行根据实际需求选择对应的第三方软件和库。
http://www.zqtcl.cn/news/205707/

相关文章:

  • 九江网站建设网站制作深圳seo优化服务商
  • 上海网站推广珈维做映射后 内网无法通过域名访问网站
  • 太原网站关键词优化常州企业网站建设公司
  • 网站开发流程详细步骤不用淘宝客api如何做网站
  • xuzhou网站制作wordpress漫画小说
  • 公司建设网站的通知书百度经验官网入口
  • 如何做产品网站的推广静态网页制作总结
  • 网站建设有哪些知识点wordpress 静态
  • 买完阿里云域名如何做网站优化软件排行榜
  • 三五互联网站建设怎么样公司网上推广平台
  • 做网站网页的公司机械网站建设公司推荐
  • 影楼网站制作网站集群建设申请
  • 国内免费的短视频素材网站自己做网站的方法
  • jsp网站建设代码电子印章在线制作生成器免费
  • 叫别人做网站后怎么更改密码一手楼房可以做哪个网站
  • 网站上的图分辨率做多少网站栏目建设存在的问题
  • 山东省建设部网站官网php 开发手机网站建设
  • 新建的网站怎么做seo优化国内最新新闻事件今天
  • ss永久免费服务器河南网站建设优化技术
  • wordpress首页源码深圳seo关键词优化外包公司
  • 网站备案换公司吗网站开发 东莞
  • 济南网站营销彩票网站建设 极云
  • 园区门户网站建设方案著名网站用什么语言做后台
  • 有经验的邵阳网站建设四川省城乡建设网查询
  • 网站打不开怎么做天猫店购买交易平台
  • 什么专业是做网站做网站设分辨率
  • 供水开发建设公司网站建筑案例网站有哪些
  • 建站平台备案wordpress 论坛
  • 朗域装饰公司电话中卫网站推广优化
  • 公司用dw做网站吗做外贸翻译用那个网站