makefile 编译参数_gcc使用说明

makefile 编译参数_gcc使用说明gcc编译源文件共有4个过程,预处理、编译、汇编、链接。预处理:命令:gcc-Etest.c-otest.i(-o后面指定生成文件的命名)过程:展开宏定义(#define),处理编译条件指令(#if#ifndef等),插入引用的头文件(#include),删除注释,添加行号和文件标识。结果:生成.i文件,一般的文本编辑器都能打开编译:命令:gcc-Ste…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

gcc编译源文件共有4个过程,预处理、编译、汇编、链接。

预处理:

命令:gcc -E test.c -o test.i  (-o后面指定生成文件的命名)
过程:展开宏定义(#define),处理编译条件指令(#if #ifndef等),插入引用的头文件(#include),删除注释,添加行号和文件标识。
结果:生成.i文件,一般的文本编辑器都能打开

编译:

命令:gcc -S test.i -o test.s
过程:词法分析,语法分析,语义分析,生成相应的汇编代码
结果:生成.s文件,一般的文本编辑器都能打开 

汇编:

命令:gcc -c test.s -o test.o
过程:将汇编语言转换成二进制文件
结果:生成.o文件,一般的文本编辑器无法打开,二进制文件都是0、1

链接:

命令:gcc test.o -o test
过程:链接动态库、静态库
结果:生成可执行文件

我们编译源文件的时候,可以分步编译,也可以使用gcc test.c -o test直接生成可执行文件。将多个源文件编译输出时,需要一起进行gcc编译,可利用Makefile文件来实现。

分步编译如下:

 makefile 编译参数_gcc使用说明

最后得到main可执行文件,在cmd命令窗口下输入main+回车,即可运行main可执行文件。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182416.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 什么是EDR!

    什么是EDR!一、端点检测与响应端点:台式机、服务器、移动设备和嵌人式设备等。攻击者往往首先利用目标网络中的脆弱端点建立桥头堡,再通过进一步的漏洞利用来构筑长期驻留条件,最终迈向既定目标。端点检测与响应((EndpointDetectionandResponse,EDR):完全不同于以往的端点被动防护思路,而是通过云端威胁情报、机器学习、异常行为分析、攻击指示器等方式,主动发现来自外部或内部的安全威胁…

    2022年6月2日
    200
  • 通过数据泵expdp、impdp方式备份与还原(导出与导入)Oracle数据库

    通过数据泵expdp、impdp方式备份与还原(导出与导入)Oracle数据库前言备份还原oracle数据库的方式有很多种,本文只讲解使用expdp、impdp数据泵方式备份与还原(恢复)数据库,此种方式可以导出/导入数据库表以及表中的数据。请自行修改目录路径,否则出现错误别怪我哦~一、备份step1:使用system登录oracle打开DOS命令行界面,使用system用户登录oracle,格式:sqlplus用户名/密码@实例名(或者使用plsql……

    2022年10月20日
    2
  • 3DES 加解密

    3DES 加解密

    2021年8月25日
    58
  • 存储过程常见语法

    存储过程常见语法存储过程常见语法一、存储过程的概念:1、存储过程Procedure是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行2、存储过程中可以包含逻辑控制语句和数据操纵语句,它可以接受参数、输出参数、返回单个或多个结果集以及返回值。3、由于存储过程在创建时即在数据库服务器上进行了编译并存储在数据库中,所以存储过程运行要比单个的SQL语…

    2022年7月17日
    14
  • Android系统签名文件

    Android系统签名文件系统签名所需要的工具signapk.jar——————–>out/host/linux-x86/framework/signapk.jar(build/tools/signapk目录编译生成)platform.pk8,platform.x509.pem——————>build/target/product/secu…

    2022年6月21日
    31
  • HTML学习笔记——标签

    HTML学习笔记——标签

    2022年2月23日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号