zoukankan      html  css  js  c++  java
  • Rocket

    https://mp.weixin.qq.com/s/PylfNmJDRasTUj9fGp7gLQ

     

    简单介绍bootrom目录中各个文件的实现。

     

     

    1. Makefile

     

    1) make过程

     

    Makefile用于简化生成bootrom.img,只需要执行make命令即可:

    主要过程为:

    a. 根据链接脚本,使用gcc把汇编代码,编译为elf格式的目标文件;

    b. 把elf目标文件拷贝为bin格式;

    c. 把bin文件拷贝128字节成为img文件;

     

    2) Makefile

     

    Makefile文件内容如下:

    其中:

    a. 默认目标为第一条规则的目标,即all;

    b. all依赖于变量bootrom_img的值,也就是bootrom.img;

    c. 生成bootrom.img使用如下通配规则:

    这里%代表的是bootrom,先决条件是bootrom.bin,执行的命令是dd;

    d. 生成bootrom.bin使用如下通配规则:

    bootrom.bin依赖于bootrom.elf,使用的命令是OBJCOPY,即riscv64-unknown-elf-objcopy;

    e. 生成bootrom.elf使用如下通配规则:

    bootrom.elf依赖于bootrom.S和linker.ld,使用的命令是GCC,即riscv64-unknown-elf-gcc;

     

    3) bin/img

     

    从bootrom.bin生成bootrom.img,使用了dd命令。dd命令只是单纯的拷贝动作,并且指定拷贝128个字节。两者之间的差异是什么呢?

     

    为了使bootrom.bin不被自动删除,我们向Makefile中添加一条.SENCONDARY规则:


    -----------------------------------------------------------------------------
    这是一篇付费文章,请移步付费阅读全文,谢谢!
    文章链接:https://mp.weixin.qq.com/s/PylfNmJDRasTUj9fGp7gLQ

  • 相关阅读:
    vue+element-ui中的表单验证(电话等等)
    什么是 RegExp?
    C中的指针和字符串
    getchar与scanf区别
    回显程序
    Python基础之容器1----字符串和列表
    Python基础之语句2
    Python基础之语句1
    Python基础之数据基本运算
    python初识
  • 原文地址:https://www.cnblogs.com/wjcdx/p/12897595.html
Copyright © 2011-2022 走看看