linux学习 gcc 硬链接软连接

基本使用格式

-$gcc [选项] <文件名>

常用选项及含义

-o 将经过gcc处理过的结果存为file 这个结果可能是预处理文件,汇编文件,目标文件和可执行文件。可执行文件默认名称a.out;目标默认文件名是source.o;汇编文件默认名为source.s
-c 对源文件进行编译 不链接生成可执行文件
-g 可执行文件中加入调试信息
-Idir 编译源程序时,Include增加一个搜索的额外目录

生成预处理文件

gcc -E hello.c -o hello.i

生成汇编文件

gcc -s hello.c -o hello.s

生成二进制目标文件

gcc -c hello.c -o hello

生成可执行文件

gcc hello.c -o hello

运行程序

$./hello

编译多个文件:
编译方式:分布编译

在这里插入图片描述在这里插入图片描述
分步编译命令:

gcc -c my_app.c
gcc -c greeting.c
gcc my_app.o greeting.o -o my_app

编译每一个.c文件,得到.o的目标文件;
将每一个.o的目标文件链接成一个可执行的文件;

将执行结果输出到文件

[root@liufengyuan liufengyuan]# ./hello>/home/liufengyuan/rj1605liufengyuan/liufengyuan 

硬链接:
硬链接实际上就是在某目录中创建目录项,从而使不止一个目录可以引用到同一个文件。这种链接关系由 ln 命令行来建立。
硬链接并不是一种特殊类型的文件,只是因为在文件系统中允许不止一个目录项指向同一个文件。

软连接:
软链接又称符号链接,是指将一个文件指向另外一个文件的文件名。
这种符号链接的关系由 ln -s 命令行来建立。

硬链接和软连接的特点:
硬链接
链接文件和被链接文件必须位于同一个文件系统内
不能建立指向目录的硬链接
软链接
链接文件和被链接文件可以位于不同文件系统
可以建立指向目录的软链接

存储设备和挂载

猜你喜欢

转载自blog.csdn.net/qq_42910523/article/details/88970966