glibc所包含的各个库

1、glibc所包含的各个库介绍

废话少说,直接介绍glibc包含了哪些库:

Library component

Content

Inclusion guidelines

ld

(This library component is not itself a library. Instead, ld.so is an executable invoked by the ELF binary format loader to load the dynamically linked libraries into an application’s memory space.)

Dynamic linker.

Compulsory. Needed to use any shared libraries.

Theoretically not necessary if using only a statically

built root filesystem—although this is quite rare,

unless you are only using BusyBox, for example.

libBrokenLocale

Fixup routines to get applications that have

broken locale features to run. Overrides application

defaults through preloading. (Need to

use LD_PRELOAD.)

Rarely used.

libSegFault

Routines for catching segmentation faults and

doing backtraces.

Rarely used.

libanl

Asynchronous name lookup routines.

Rarely used.

libbsd-compat

Dummy library for certain BSD programs that

are compiled with -lbsd-compat.

Rarely used.

libc

Main C library routines

Compulsory.

libcrypt

Cryptography routines.

Required for most applications involved in

authentication.

libdl

Routines for loading shared objects

dynamically

Required for applications that use functions such as

dlopen().

libm

Math routines.

Required for math functions.

libmemusage

Routines for heap and stack memory profiling.

Rarely used.

libnsl

NIS network services library routines.

Rarely used.

libnss_compat

Name Switch Service (NSS) compatibility routines for NIS.

Loaded automatically by the glibc NSS

libnss_dns

NSS routines for DNS.

Loaded automatically by the glibc NSS

libnss_files

NSS routines for file lookups.

Loaded automatically by the glibc NSS

libnss_hesiod

NSS routines for Hesiod name service.

Loaded automatically by the glibc NSS

libnss_nis

NSS routines for NIS.

Loaded automatically by the glibc NSS

libnss_nisplus

NSS routines for NIS plus.

Loaded automatically by the glibc NSS

libpcprofile

Program counter profiling routines

Rarely used.

libpthread

POSIX 1003.1c threads routines for Linux.

Required for threads programming.

libresolv

Name resolver routines.

Required for name resolution.

librt

Asynchronous I/O routines.

Rarely used.

libthread_db

Thread debugging routines.

Loaded automatically by gdb when debugging threaded

applications. Never actually linked to by any

application.

libutil

Login routines, part of the user accounting database.

Required for terminal connection management.

2、如何判断当前自己的glibc版本

系统里的glibc都叫libc.so.6,是不是就不知道它是哪个版本的glibc了呢?其实它是个软连接,可以通过查看它链接到哪个库来判断:

$ ls /lib32/libc.so.6 -al
lrwxrwxrwx 1 root root 12 6月   5  2020 /lib32/libc.so.6 -> libc-2.23.so

可以看到我的Ubuntu里的glibc的版本是2.23。

3、参考

https://www.cnblogs.com/cute/archive/2011/05/03/2035645.html

おすすめ

転載: blog.csdn.net/sjwangjinbao/article/details/118684189