我的系统上安装了两个gcc编译器,一个是gcc 4.1.2(默认),另一个是gcc 4.4.4.如何判断gcc 4.4.4使用的libc版本,因为/lib/libc.so.6显示gcc 4.1.2使用的glibc,因为它是默认编译器.

推荐答案

编写一个测试程序(例如glibc-version.c):

#include <stdio.h>
#include <stdlib.h>
#include <gnu/libc-version.h>

int main(int argc, char *argv[]) {
  printf("GNU libc version: %s\n", gnu_get_libc_version());
  exit(EXIT_SUCCESS);
}

并使用gcc-4.4编译器进行编译:

gcc-4.4 glibc-version.c -o glibc-version

当执行./glibc-version时,将显示使用的glibc版本.

C++相关问答推荐

C指针地址和转换

为什么写入系统调用打印的字符数不正确?

不同到达时间的轮询实现

ATTiny1606定时器TCA 0中断未触发

为什么在Linux(特别是Ubuntu 20.04LTS)上,POSIX共享内存对象在重启后仍然存在,然后突然变成了根用户?

当多个线程在C中写入相同的文件描述符时,如何防止争用情况?

自定义应用程序上的日志(log)轮换问题

仅在给定的大小和对齐方式下正确创建全局

如何在c++中包装返回空*的函数

如何使用C for Linux和Windows的标准输入与gdb/mi进行通信?

获取每个循环迭代结束时的当前时间

在移动数组元素时获得意外输出

Boyer Moore算法的简单版本中的未定义行为

链表删除 node 错误

GetText不适用于包含国际字符的帐户名称

从另一个宏函数调用C宏

有没有办法减少C语言中线程的堆大小?

struct 中的qsort,但排序后的 struct 很乱

将char*铸造为空**

malloc:损坏的顶部大小无法找出问题