linux中.a文件指的是什么

这篇文章主要介绍了linux中.a文件指的是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇linux中.a文件指的是什么文章都会有所收获,下面我们一起来看看吧。

在linux中,“.a”文件是静态链接文件;静态链接文件是指要调用函数或者过程链接到可执行文件中,成为可执行文件的一部分,动态链接调用函数代码并没有被拷贝到应用程序的可执行文件中去,而是在其中加入了所调用函数的描述信息。

本教程操作环境:linux7.3系统、Dell G3电脑。

linux中.a是什么文件

.a文件,是LINUX系统中的静态链接文件

所谓静态链接是指把要调用函数或者过程链接到可执行文件中,成为可执行文件的一部分。当多个程序都调用相同函数时,内存中就会存在这函数的多个拷贝,这样就浪费了宝贵的内存资源。.so文件是共享库文件(动态链接)。动态链接调用函数代码并没有被拷贝到应用程序的可执行文件中去,而是仅仅在其中加入了所调用函数的描述信息(往往是一些重定位信息),仅当应用程序被装入内存开始运行时,在操作系统的管理下,才在应用程序与相应的.so之间建立链接关系。

.a文件是多个.o文件的组合。.o文件就是对象文件,里面包含的内容就是01这样的机器可执行的指令,当程序要执行时还需要进行链接(link).链接就是把多个.o文件链成一个可执行文件

扩展知识

.o 就是object, 也就相当于windows下编译的obj文件, 俗称目标文件.

.a 就是archive, 也就相当于windows的VC下编译的lib文件, 俗称静态库文件.

.o文件链接文件,.a是静态库文件,靠.o文件生成,作为一个库为外部程序提供函数,接口。

生成.o文件

gcc -c test.o test.c

生成.a文件:

ar cqs test.a test.o

.o 就相当于windows里的obj文件一个.c或.cpp文件对应一个.o文件

.a 是好多个.o合在一起,用于静态连接 ,即STATIC mode,多个.a可以链接生成一个exe的可执行文件

.so 是shared object,用于动态连接的,和windows的dll差不多,使用时才载入

关于“linux中.a文件指的是什么”这篇文章内容就介绍到这里,感谢各位的阅读!相信大家对“linux中.a文件指的是什么”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程之家行业资讯频道。

相关文章

今天小编给大家分享一下excel图案样式如何设置的相关知识点,...
这篇文章主要讲解了“win10设置过的壁纸如何删除”,文中的讲...
这篇“Xmanager怎么显示远程linux程序的图像”文章的知识点大...
今天小编给大家分享一下xmanager怎么连接linux的相关知识点,...
这篇“如何重置Linux云服务器的远程密码”文章的知识点大部分...
本篇内容介绍了“Linux云服务器手动配置DNS的方法是什么”的...