gcc默认链接到libc.a或libc.so吗?

时间:2018-02-28 20:35:17

标签: c gcc libc

我在Ubuntu 16.04 64位上使用gcc 5.4.0。当我编译程序时:

gcc -o prog prog.c

GCC自动链接到C标准库,因此我不必专门这样做。

  1. 如何查看哪个C库与gcc链接,libc.a或libc.so或其他什么?
  2. 它在什么情况下链接到libc.so?是否需要像运行其他共享库一样在运行时指定libc.so?
  3. 提前致谢。

1 个答案:

答案 0 :(得分:6)

  

如何查看哪个C库与gcc链接,libc.a或libc.so或其他什么?

您可以使用ldd命令查看所有链接的共享库。如果找到libc.so,则为动态链接。

  

它在什么情况下链接到libc.so?

默认情况下,gcc使用动态链接和指向libc.so的链接。如果您想要静态链接,请传递-static标志。

  

是否需要在运行时指定libc.so,就像其他共享库一样?

通常不会,因为它是由编译器自动配置的。