glibc的结构?

由于glibc在你使用gcc编译你的程序的时候会自动链接,包括我在内的很多人都不太了解它。 所以我的问题是,什么是glibc组成的。 什么是对象,与glibc相关的共享对象文件? 他们放在哪个目录中。 其次,默认情况下,gcc是否只使用了glibc的共享目标文件,还是需要对象文件呢? glibc的哪个共享对象被gcc自动链接?

glibc是标准C库的GNU实现,具有超出标准的额外功能。

该手册告诉你到底是什么,以及如何使用它。

所以我的问题是,什么是glibc组成的

GNU C库函数

什么是对象,与glibc相关的共享对象文件?

你是不是指glibc的哪个链接? 或者哪个glibc链接到? 前者是使用它提供的C库函数的一切(不一定是gcc生成的程序),而后者是内核库。

他们放在哪个目录中

AFAIK取决于发行版,可能是/ usr / local / glibc,/ usr / lib / glibc等

其次,默认情况下,gcc是否只使用了glibc的共享目标文件,还是需要对象文件呢?

只有glibc共享对象,但是有一些目标文件包含gcc自动链接的所有gcc生成程序的启动代码(当你告诉它连接时)。