(五)Linux的编程环境

一.GCC编译器

由vim编辑器生成main.c源代码:

#include<stdio.h>
int main()
{
   
printf("Hello World!");
return 0;
}

gcc 与 g++ 分别是 gnu 的 c & c++ 编译器 gcc/g++ 在执行编译工作的时候,总共需要4步:
(1)预处理,生成 .i 的文件[预处理器cpp]

gcc -E main.c -o main.i

(2)将预处理后的文件转换成汇编语言, 生成文件 .s [编译器egcs]

gcc -S main.i -o main.s

(3)有汇编变为目标代码(机器代码)生成 .o 的文件[汇编器as]

gcc -c main.s -o main.o

(4)连接目标代码, 生成可执行程序 [链接器ld]

gcc main.o -o main

GCC有超过100个的可用选项,主要包括总体选型、警告和出错选项、优化选项和体系结构相关选项,它的结构如下:

GCC [选项] 文件
选项 含义
-E 仅做预处理
-S 编译到汇编语言
-c 编译到目标文件
-o 文件输出到文件
-static 禁止使用动态库
-share 使用动态库
-I dir 在头文件的搜索路径列表中添加dir目录
-L dir 在库文件的搜索路径列表添加dir目录
-llibrary 链接名为library的库文件
-Wall 打开所有类型语法警告
-Wcomment 注释中有“/*”,“\”,会影响程序的运行
-fsyntax-only 检查程序中的语法错误,但是不产生输出信息
-w 禁止所有警告信息
-O 或 -O1 优化生成代码
-O2 进一步优化

二.GDB调试器

GDB可以让用户查看程序的内部结构、打印变量值、设计断点,以及单步调试源代码。GDB调试的是可执行文件,而不是".c"源代码,因此需要通过GCC编译生成可执行文件才能用GDB进行调试。将GCC生成的可执行文件main,如下键入即可进行GDB调试:

gdb ./main

进入GDB后可以进行命令调试,GDB命令很多,可以用help查看GDB命令种类,如果查看具体命令,可以使用help。

&#x

相关推荐

  1. Linux编程环境

    2024-05-09 20:22:03       12 阅读
  2. Linux 系统中 OpenCV-Python 编程环境

    2024-05-09 20:22:03       21 阅读
  3. Linux网络编程

    2024-05-09 20:22:03       21 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-09 20:22:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-09 20:22:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-09 20:22:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-09 20:22:03       20 阅读

热门阅读

  1. uniapp遍历数组对象的常见方法

    2024-05-09 20:22:03       13 阅读
  2. 【LeetCode】数组——hashmap的妙用

    2024-05-09 20:22:03       12 阅读
  3. Github 2024-05-06 开源项目日报 Top10

    2024-05-09 20:22:03       11 阅读