首页 > 编程语言 >汇编语言交叉编译

汇编语言交叉编译

时间:2023-01-23 09:11:17浏览次数:63  
标签:文件 led 交叉 汇编语言 elf 编译 linux arm

预编译:汇编 .s 文件 -> .o文件

arm-linux-gcc -c -o led_on.o led_on.S

  arm-linux-gcc 交叉编译工具,是在x86平台编译arm平台代码的工具

 -c 预编译

 -o led_on.o   参数 -o 代表输出文件(out put) 后面跟输出文件名

 led_on.S 是汇编语言源码文件

 

 

链接文件:.o 文件 --> .elf 文件

arm-linux-ld -Ttext 0 led_on.o  -o led_on.elf

  arm-linux-ld  链接文件,是在x86平台编译arm平台代码的工具

 -Ttext  0  设置源码里 text 段,加载到内存(RAM)0地址运行。

      0 实际是 0x0000的简写,因为是 0 ,人和机器都不会产生歧义,就不区分是几进制了。

      注意:如果非0则不能用这样的简写。

 led_on.o   上一步预编译好的 .o 文件

 -o led_on.elf 参数 -o 代表输出文件(out put) 后面跟输出文件名

 

 

生成机器可运行的二进制文件:

arm-linux-objcopy -o binary -S led_on.elf led_on.bin

  arm-linux-objcopy 编译文件,是在x86平台编译arm平台代码的工具

 -O binary   指定生成二进制文件,-O是大写。

 -S led_on.elf  指定上一步的链接文件

 led_on.bin 输出机器可执行的文件

 

 

来源参考:

B站《韦东山_嵌入式Linux_第一期ARM裸机实战视频教程_免费试看版》
https://blog.csdn.net/weixin_34332352/article/details/116929868

 

标签:文件,led,交叉,汇编语言,elf,编译,linux,arm
From: https://www.cnblogs.com/wutou/p/17064920.html

相关文章

  • 汇编语言源码文件注释
    每种语言都有注释,是为了方便自己或别人查看源码功能所用的。汇编源码注释:单行:用/*开头,用*/结尾示例:/*我是一行注释*/ 多行:用/*开头,用*/结尾,中......
  • 汇编语言源码文件后缀.S
    汇编语言源码文件后缀名是.s(不区分大小写,一般是根据约定,比如每个公司要求不一样)但一定是s结尾。   来源:B站《韦东山_嵌入式Linux_第一期ARM裸机实战视频教程_......
  • 编译snowboy 笔记
    1.安装依赖sudoapt-getinstallpulseaudiosoxpython3-pyaudioswiglibatlas-base-devpython3-dev2.获取源代码gitclonehttps://github.com/Kitt-AI/snowboy.git......
  • s3c2440 gcc交叉编译工具链制作
    前言:因为准备学习lwip,之前在stm32上移植跟着教程走得差不多了,但是用的keil。所以想在一个新平台移植一下巩固巩固,正好有2440的板子,也学一下gcc-make这样的开发流程,配套的......
  • VS2010编译jpeg.lib
    --------------------------------------------2.打开VS2010命令行,进入jpeg-9a目录----------------------------------------------------------------------------------......
  • WSL中使用vcpkg安装pcl库出现编译失败的原因
    在wsl使用vcpkginstallpcl安装时,出现了BUILD_FAILED失败提示,查看log文件出现如下的错误:compilationproblem,c++:internalcompilererror:Killed(programcc1......
  • 史上最简单 OpenCV for C++ 在 Windows 和 Ubuntu 上编译安装使用教程
    准备工作原材料Ubuntu系统(非必须,Windows也可以,主要是Ubuntu适合编译)OpenCV3.4.1压缩包OpenCVcontrib3.4.1压缩包MinGW(Windows上运行GCC)版本信息......
  • 您是否存在想在浏览器动态编译razor的组件的想法?
    不知道是否有人跟我一样想在浏览器上直接可以动态的编译blazor的一些组件库?而不是通过引用NuGet以后才能查看到效果,并且在使用别人的组件的时候可以在动态的调整组件的一些......
  • Java反编译
    Java反编译java在编译的过程中会将源代码进行一次预编译,编译成后缀名为class的字节码源文件后将.class文件转载进类装载器中从而加载到jvm中,加载到jvm中后字节码校验器会......
  • (转)Delphi编译器版本对照表及工具链
    目录Delphi编译器版本对照表及工具链1、Delphi编译器版本历史对照表2、Delphi工具链(Delphi编译器)3、Delphi条件编译3.1、预定义条件符号:3.2、对编译器版本的条件......