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

C语言编译为可执行文件的步骤

在 C 语言中,将源代码编译为可执行文件的过程一般包括以下四个主要步骤:

  1. 预处理(Preprocessing)
    • 处理 #include、#define 以及条件编译指令(如 #ifdef)。
    • 生成 .i 预处理文件(可选)。

示例命令:

gcc -E main.c -o main.i

  1. 编译(Compiling)
    • 将预处理后的 C 代码转换为汇编代码。
    • 生成 .s 汇编文件(可选)。

示例命令:

gcc -S main.i -o main.s

  1. 汇编(Assembling)
    • 将汇编代码转换为机器码,生成目标文件(.o 或 .obj)。

示例命令:

gcc -c main.s -o main.o

  1. 链接(Linking)
    • 将目标文件与标准库或其他库链接,生成最终的可执行文件(如 a.out 或 main.exe)。

示例命令:

gcc main.o -o main

完整编译命令

通常,GCC 会自动完成上述所有步骤:

gcc main.c -o main

如果你的 C 代码依赖其他库,可以使用 -l 选项,如:

gcc main.c -o main -lm # 链接数学库(libm.so)

查看可执行文件信息
• 检查是否可执行:

ls -l main

•	查看文件类型:

file main

•	运行可执行文件:

./main

这样,你就完成了 C 语言程序从源码到可执行文件的整个编译流程! 🚀

相关文章:

  • Win32 / C++ Windows文件夹路径获取
  • mysql 入门
  • 多层感知机从0开始实现
  • Java设计模式之解释器模式
  • ofd转pdf报错:org.ofdrw.reader.ZipUtil.unZipFileByApacheCommonCompress【已解决】
  • web爬虫笔记:js逆向案例十一 某数cookie(补环境流程)
  • C#委托介绍
  • 算法数论.3(拓展欧几里得,中国剩余定理)
  • 搭建第一个Spring项目
  • 题解:AT_abc170_f [ABC170F] Pond Skater
  • Linux中执行 ifconfig 命令时提示 “未找到命令”
  • 无人设备遥控器之调度自动化技术篇
  • MCP(大模型上下文协议)
  • C++ 的基本内置类型(十二)
  • springboot body 转对象强验证属性多余属性抛错误
  • [NO-WX179]基于springboot+微信小程序的在线选课系统
  • msvcp140.dll是什么文件?修复丢失msvcp140.dll的方法指南
  • Python FastAPI 面试题及参考答案
  • [CLS] Token 在 ViT(Vision Transformer)中的作用与实现
  • 模拟算法专题
  • 在深化教育科技人才一体发展上打头阵、当尖兵!陈吉宁调研复旦大学
  • 财政部:4月份中央收入增长1.6%,今年以来首月实现正增长
  • 李在明遭遇暗杀威胁,韩国警方锁定两名嫌疑人
  • 欧洲观察室|“美国优先”使欧盟对华政策面临地缘经济困境
  • 昆明一小区火灾调查报告:七旬夫妇身亡,生前拾荒存放大量可燃物
  • 在越剧之乡嵊州,浙江音乐学院越剧学院成立