zoukankan      html  css  js  c++  java
  • Ubuntu驱动程序开发1-环境搭建

    1、安装交叉编译工具链

    1.1 下载4.9.4版本的交叉编译器,并存放到/usr/local/arm目录

    链接:https://releases.linaro.org/components/toolchain/binaries/4.9-2017.01/arm-linux-gnueabihf/

    1.2 新建/usr/local/arm文件,并将下载好的压缩包解压到此文件夹中

    sudo tar -vxf gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf.tar.xz

      这样,该文件夹里面就是我们的交叉编译工具链。

    1.3 修改环境变量

    1.3.1 所有用户全局设置

    打开/etc/profile文件,在最后面添加如下内容:

    export PATH=$PATH:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin

     生效:

    source profile

    1.3.2 当前用户全局设置

    打开~/.bashrc文件,添加内容同上(注意文件名根据自己实际下载的填写)

    生效:

    source .bashrc

    1.4 在使用交叉编译工具链之前还需安装其他库

    sudo apt-get install lsb-core lib32stdc++6

    1.5 验证

    arm-linux-gnueabihf-gcc -v

    1.6 使用

    1.6.1 编译

    arm-linux-gnueabihf-gcc -g -c led.s -o led.o  

      -g,产生调试信息;-c,编译但不链接;-o,指定编译产生的文件名

    1.6.2 链接

    arm-linux-gnueabihf-ld -Ttext 0X87800000 led.o -o led.elf  

      -Ttext,指定链接地址,即程序的运行地址

    1.6.3 格式转化

    arm-linux-genueabihf-objcopy -O binary -S -g led.elf led.bin  

      -O,指定输出格式为二进制格式;-S,不复制源文件中的重定位信息和符号信息;-g,不复制源文件调试信息

    1.6.4 反汇编

    arm-linux-gnueabihf-objdump -D led.elf > led.dis  

      -D,表示反汇编所有的段。大多数情况下我们都是用 C语言写试验例程的,有时候需要查看其汇编代码来调试代码,

    因此就需要进行反汇编,一般可以将 elf文件反汇编。

    2、Uboot烧写

    2.1 将imxdown拷贝到工程目录下,也就是和.bin文件在同一个文件夹下

    2.2 给予imxdownload可执行权限  chmod 777 imxdownload

    2.3 电脑中插入sd卡(使用 ls /de/sd*来查看确认sd卡是sd多少)

    2.4 烧写bin文件

    ./imxdownload u-boot.bin /dev/sdd
  • 相关阅读:
    html的URL参数传值问题
    html背景图片拉伸至全屏
    Laravel 用户验证Auth::attempt fail的问题
    HTML中meta的应用
    ubuntu升级php版本
    Laravel 目录结构分析
    css颜色渐变在不同浏览器的设置
    谷歌浏览器(Chrome)离线包的下载方法!
    RAD Studio 10 up1欢迎页证书不可用
    MySQL
  • 原文地址:https://www.cnblogs.com/Mike2019/p/12864142.html
Copyright © 2011-2022 走看看