一,yum的使用—— yum install gcc/sl等
操作系统为什么要把这些硬件等管理好
答:那是因为让了我们使用的更加方便

运行程序的四大步骤:
预处理 /展开头文件/宏替换/去注释/条件编译 gcc -E test.c -o test.i
编译 生成汇编语言 gcc -S test.i -o test.s
汇编 生成可执行程序 gcc -c test.s -o test.o
链接 ./test.o
在Linux中:
ldd + 运行程序(查看库)
动态库:.so
静态库:.a
file +运行程序(查看可执行程序的属性)
gcc test.c -o test-static -static //生成静态库,文件的大小是非常大的
二: 调试器:gdb的使用
debug版本:是测试版本,可以调试的。
release版本:是发布版本,不可以调试
gdb + 运行程序——》进入调试界面
想要调试的话:gcc sum.c -o sum.debug -g -生成可调式执行文件
查看当前的代码: l /l1(由第行打印)
打断点:b + 行数
删断点:d +行数
查看断电:info + b
让程序跑起来: r
单行显示:n(next) 或者按回车,默认执行上层命令
查看当前进行到第几项了:p + 变量名字
把当前的循环函数跑完:finish
直接跳转到第几行:until + 行数
进入函数: s
当第一行只有一个断点的时候,就卡住了,如果想继续继续向下跑程序:c -【这里条件的话,程程序就跑完了】
退出:quit
三,自动化构建工具——make/Makefile
make–是命令
Makefile–是文件
Makefile里面写两个:一个是依赖关系,一个是依赖方法
vim Makefile 打开文件
写一个Makefile
sum(目标文件):sum.c(依赖文件)
依赖方法:Tab键按一下空开,gcc test.c -o test
生成一个伪目标的东西: .PHONY:clean
下一步: clean:
然后一个Tab键: rm -f test
新的Makefilr创建
gcc -o $@ $^
$@表示:冒号之前的目标文件
$^表示:冒号之后的依赖文件
//1.伪目标总是被执行的
//为什么要设置clear是伪目标呢?那是因为我们要保证每次清除是可运行的。
//make是怎么判断你需要编译呢,是由时间判断的,每次编译都有时间的,每次编译都查看时间呢.所以PHONY是怎么一直被执行呢?那是因为它不查看时间,一直被执行。
四,Git命令的使用
GitHub——版本控制器
第一步:git clone https://github.com/dpfnmt/Train_item.git
1. git add + 上传的文件
2. git commit -m "first add code"
3. git push
4. git log _查看提交记录
本文详细介绍Linux环境下软件开发的基础知识,包括使用YUM安装GCC等工具,理解程序运行的四个步骤,掌握GDB调试技巧,利用Make和Makefile实现自动化构建,以及如何运用Git进行版本控制。适合初学者和有经验的开发者作为参考。

780

被折叠的 条评论
为什么被折叠?



