【发布时间】:2013-05-23 15:47:19
【问题描述】:
我只是不明白。
我相信 gcc 在调用 gcc 驱动程序时会自动链接 libc.a。
但是,出于好奇,我想使用 -static 静态链接 libc.a,但我明白了;
ld: library not found for -lcrt0.o
collect2: ld returned 1 exit status
我只是不明白?另外,crt0 是什么?
我也读过帖子说 从不 静态链接 libc.a ;为什么?从我所读到的(诚然,我只是一名本科生),我没有看到静态链接的缺点..
我阅读了this 帖子,它告诉我添加似乎可以正确编译的-lc,但这是静态链接还是只是添加 libc.dylib?
此外,每当我使用-static 标志时,我都会收到从ld 返回的相同错误。我不明白?我正在阅读的文本显示了使用 Unix 环境的示例,并且由于 OS X 是基于 Unix 的,为什么我在使用 Mac 时遇到这么多困难?
谢谢,扎克
【问题讨论】:
标签: c macos linker static-linking