about gcc & ld
Yu Xuanwei
yxw@chinacluster.com
Tue Jan 9 17:56:00 GMT 2001
----- Original Message -----
From: Yu Tang <carino@mail.ustc.edu.cn>
To: <gcc@gcc.gnu.org>
Sent: Tuesday, January 09, 2001 7:56 PM
Subject: about gcc & ld
> Hi, I get my problem when I am study about ELF.
> here is a simple c program:
> ---------------------------
> /* haha.c */
> #include "stdio.h"
> int main()
> {
> printf("haha\n");
> }//main
> ---------------------------
> I compiled it as following steps
> #gcc -c haha.c
> #ld haha.o /usr/lib/crt0.o /usr/lib/crti.o /usr/XXX/crtbegin.o
> /usr/XXX/crtend.o -lc -o hahald
>
> And It can't work. :( [but when use #gcc haha.c -o hahagcc]
> and hahagcc works.
> (I have found a little difference between hahagcc & hahald,
> the section .intrp of hahagcc is "/usr/lib/ld-linux.so.2",
> while hahald is "/usr/lib/libc.so.1
Just utilize GCC. The GCC specs file defines which ld is involved during
compiling. ld-linux.so.2 is a integral component of glibc as a linker. But
ld doesn' know which glibc is suitable to current GCC. So that's why we
could get more than one GCC in one Linux platform.
> )
> So what's wrong with my way? and how can i make gccld work proper?
>
>
>
More information about the Gcc
mailing list