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

网站建设情况怎么写他达拉非什么是

网站建设情况怎么写,他达拉非什么是,如何设置网站logo,公司怎么注册邮箱帐号文章目录前言一、Linux中配置编译环境1.1 linux下安装软件的方法1.2 交叉编译工具链的安装1.2.1 测试是否安装成功1.3 设置环境变量1.3.1 将工具链导出到环境变量1.4 为工具链创建arm-linux-xxx符号链接二、 搭建运行开发环境2.1 tftp网络方式加载内核和设备树文件2.2 nfs网络方…

文章目录

  • 前言
  • 一、Linux中配置编译环境
    • 1.1 linux下安装软件的方法
    • 1.2 交叉编译工具链的安装
      • 1.2.1 测试是否安装成功
    • 1.3 设置环境变量
      • 1.3.1 将工具链导出到环境变量
    • 1.4 为工具链创建arm-linux-xxx符号链接
  • 二、 搭建运行开发环境
    • 2.1 tftp网络方式加载内核和设备树文件
    • 2.2 nfs网络方式加载rootfs
  • 参考资料

前言

搭建驱动开发的环境,便于调试。文章记录了本人的项目实践和朱有鹏老师的课程知识汇总。

一、Linux中配置编译环境

1.1 linux下安装软件的方法

(1)在线安装。譬如ubuntu中使用apt-get install vim来安装vim软件。
(2)自己下载安装包来安装。缺陷: 不知道下载的安装包和系统是否匹配。
(3)源代码安装。
总结:安装交叉编译工具链(arm-linux-gcc)实际采用第二种安装方式。

1.2 交叉编译工具链的安装

打开虚拟机,在/usr/local/下创建/usr/local/arm文件夹
先将安装包从Windows中弄到linux中去。可以用共享文件夹,也可以用Samba,也可以用cuteftp。

解压:tar -jxvf arm-2009q3.tar.bz2

应用程序在解压出来的文件中,安装在/usr/local/arm/arm-2009q3/bin目录下。

注:linux中的目录管理方法。技术角度来讲,linux中所有目录性质都是一样的,所以技术角度来讲我们把软件安装到哪里都行。但是如果胡乱放置,将来程序可能不好找。所以久而久之就总结了一个文件放置的一般定义,譬如说,/bin目录放置一些系统自带的用户使用的应用程序,/sbin目录下存放的是系统自带的系统管理方面的应用程序

那我们装软件放在哪里?
一般都在/usr目录下。我们安装arm-linux-gcc,就在/usr/local/底下创建一个arm文件夹,然后装到里面。

1.2.1 测试是否安装成功

切换到真正的应用程序的安装目录下(即/usr/local/arm/arm-2009q3/bin), 去执行arm-linux-gcc -v

执行方法:./arm-none-linux-gnueabi-gcc -v

执行后可以得到一长串输出,其中有**“gcc version 4.4.1”**字样,即表示安装成功。

arm-none-linux-gnueabi-gcc No such file or directory这个错误的分析思路:正常来说只有某个被编译的文件不存在才会报这个错误,但如果确少某个必要的包,也会出现这个问题,而且根本不知道从哪里查问题。
真正原因: 这个gcc可执行文件是32位的版本,而在64位系统上需要安装32位兼容包才可以运行正常。
解决办法:
安装ia32-libs (sudo apt-get install lib32z1
但是此时只能在应用程序目录下执行应用程序或者在别处执行时需要写入完整的应用程序路径/usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-gcc-v比较繁琐,所以下面引入环境变量。

1.3 设置环境变量

环境变量就是操作系统的全局变量。每一个环境变量对操作系统来说都是唯一的,名字和所代表的意义都是唯一的。linux系统可以有很多个环境变量。其中有一部分是linux系统自带的,还有一些是我们自己来扩充的。我们这里涉及到的一个环境变量是PATH。PATH这个环境变量是系统自带的,它的含义就是系统在查找可执行程序时会搜索的路径范围。(此时在任意路径直接执行arm-none-linux-gnueabi-gcc -v都可以了)

输出linux系统环境变量: echo $PATH

1.3.1 将工具链导出到环境变量

在终端中输入

export PATH=/usr/local/arm/arm-2009q3/bin:$PATH

但是此时只要关掉这个终端再另外打开一个立马就不行了。原因是我们本次终端中执行时的操作只是针对本终端,以后再打开的终端并未被执行过这个命令所以没导出。
解决方案:

在~/.bashrc中,在最下面添加环境变量
export PATH=/usr/local/arm/arm-2009q3/bin:$PATH
更新~/.bashrc文件, source   ~/.bashrc

1.4 为工具链创建arm-linux-xxx符号链接

终端中输入: ln arm-none-linux-gnueabi-addr2line -s arm-linux-addr2line,即可通过arm-linux-addr2line访问ln arm-none-linux-gnueabi-addr2line

二、 搭建运行开发环境

2.1 tftp网络方式加载内核和设备树文件

  1. 将uImage和dtb文件放入到ubuntu中的/tftpboot
  2. 在开发板中设置uboot参数,使其能够去加载内核(根据自己实际的IP进行配置),或直接把配置过nfs服务的内核,经过编译得到的zImage烧录到开发板。
set ipaddr 192.168.1.10
set serverip 192.168.1.141
set bootcmd tftp 0x41000000 uImage \; tftp 0x42000000 exynos4412-fs4412.dtb \; bootm 0x41000000 - 0x42000000
save或saveenv

2.2 nfs网络方式加载rootfs

  1. 需要一个根文件系统目录–rootfs.tar.xz,需要解压到ubuntu

sudo tar -zxvf rootfs.tar.xz -C /x210_porting/rootfs

  1. 配置nfs服务器(需要安装),让/x210_porting/rootfs可以被挂载
sudo vim /etc/exports
/x210_porting/rootfs                *(subtree_check,rw,no_root_squash,async)
sudo service nfs-kernel-server restart  //重启nfs服务器,或sudo /etc/init.d/nfs-kernel-server restart

  测试是否挂载成功

sudo mount -t nfs localhost:/x210_porting/rootfs /mnt

  1. 设置bootargs使开发板从nfs去挂载rootfs(内核配置记得打开使能nfs形式的rootfs)。在开发板中去指定内核要挂载/opt/…/rootfs–切换到开发操作。
setenv bootargs root=/dev/nfs nfsroot=192.168.1.141:/x210_porting/rootfs/rootfs ip=192.168.1.10:192.168.1.141:192.168.1.1:255.255.255.0::eth0:off  init=/linuxrc     console=ttySAC2,115200 
save
reset 	//重启开发板

  解释:

    bootargs 是uboot传递给内核到启动参数,是一个字符串console=xxx: 告诉内核启动时候到调试信息是从哪个设备输出init=xxx:  告诉内核linux到第一个用户进程是什么root=xxx : 告诉内核根文件系统在哪里root=/dev/nfs 表示根文件系统在网路远端nfsroot=ip:pathip=xxx :告诉内核开机的时候内核的ip地址是多少(静态分配ip)
  1. 修改Makefile中的KERN_DIR使其指向自己建立的内核源码树,并将自己编译好的驱动.ko文件放入nfs共享目录下去
    在这里插入图片描述
    4、开发板启动后使用insmod、rmmod、lsmod等去进行模块实验
    在这里插入图片描述
    至此,我们具备了开发驱动的基础,我们将在之后一步步去探究驱动开发的奥秘。

参考资料

HQ驱动开发环境搭建-上
驱动开发环境搭建-下
华为云

http://www.mmbaike.com/news/25789.html

相关文章:

  • 长沙网站托管哪家好长沙网红打卡景点排行榜
  • 常熟做网站多少钱按seo推广平台
  • 江苏网站建设网络公司网站建设公司好
  • dede wap网站模板下载百度推广用户注册
  • 做购物网站哪个cms好用seo优化常识
  • 抖音创作者服务平台站长seo综合查询工具
  • 个人网站免费建设天津seo公司
  • cp网站建设化妆培训
  • 手机怎么建立网站站长工具pr值查询
  • 做网站ui如何快速推广自己的网站
  • 厦门做企业网站比较好的公司网站互联网推广
  • 百度推广电话是多少广州seo工作
  • django做的网站源码产品软文范例800字
  • 网页网站设计公司有哪些链友之家
  • 怎么做微帮网站太原搜索排名提升
  • 企业网站中( )是第一位的。重庆seo技术博客
  • 手机网站效果图做多大的营销新闻
  • 服装网站建设策划书论文百度网盘搜索神器
  • wordpress 健身优化推广
  • 可以做流程图的网站阳西网站seo
  • 医生在线咨询网站排名优化软件联系方式
  • 域名做网站seo网络科技有限公司
  • 萍乡公司做网站百度seo灰色词排名代发
  • 药店怎么建设自己的网站南昌seo网站推广
  • 做煤层气的网站随机关键词生成器
  • 网站建设的快乐自媒体营销代理
  • 网站必须做等保合规长沙seo优化推荐
  • 设计素材网站p谷歌关键词挖掘工具
  • 网站设计的公司叫什么单页面seo搜索引擎优化
  • 城市人家装饰公司怎么样合肥网络公司seo