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

问题描述 投票:5回答:1

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

gcc -o prog prog.c

GCC自动链接到C标准库,所以我没有专门这样做。

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

提前致谢。

c gcc libc
1个回答
6
投票

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

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

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

gcc默认使用动态链接和libc.so链接。如果你想要静态链接,请传递-static标志。

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

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

© www.soinside.com 2019 - 2024. All rights reserved.