Subject: Re: recent buildlink and/or compiler changes have made pkgsrc stop
To: None <tech-pkg@netbsd.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 02/03/2004 13:13:45
On Tue, 3 Feb 2004, Jeremy C. Reed wrote:

> If the directory is "not_found" then that should be checked instead of
> trying to cd to it. And it should give an informative message at
> buildlinking time. What is not found?

Another example. Notice the -Lnotfound and -Wl,-Rnot_found.

cc -g -I/usr/include -DUSE_SSL   -lssl -lcrypto -lcrypt -lutil
-Lnot_found -Wl,-Rnot_found -L/usr/cc/lib -Wl,-R/usr/cc/lib -L/usr/lib
-Wl,-R/usr/lib mini_httpd.o match.o tdate_parse.o  -o mini_httpd
/usr/bin/ld: cannot find -lgcc
collect2: ld returned 1 exit status

(That is mini_httpd.)

The .buildlink/bin/.cache-trans and .buildlink/bin/.cache-add-trans
mention the -lgcc.

Also, why does above cc include "-L/usr/cc/lib"? Where does "/usr/cc/lib"
come from?

The .work.log shows:

/usr/bin/cc -pipe -g -DUSE_SSL -lssl -lcrypto -lcrypt -lutil -Lnot_found
-Wl,-Rnot_found mini_httpd.o match.o tdate_parse.o -o mini_httpd

/usr/bin/ld --eh-frame-hdr -m elf_i386 -dynamic-linker /lib/ld-linux.so.2
-o mini_httpd /usr/lib/crt1.o /usr/lib/crti.o
/usr/gcc3/lib/gcc-lib/i386-pc-linux/3.3.2/crtbegin.o -Lnot_found -lssl
-lcrypto -lcrypt -lutil -Rnot_found mini_httpd.o match.o tdate_parse.o
-lgcc -lgcc_eh -lc -lgcc -lgcc_eh
/usr/gcc3/lib/gcc-lib/i386-pc-linux/3.3.2/crtend.o /usr/lib/crtn.o

Also, I have:

work.puget/.buildlink/.gcc3c_buildlink_done:/usr/cc/lib/gcc-lib/*/*/include/*/*/*/*:
not found
...
work.puget/.buildlink/.gcc3c_buildlink_done:/usr/cc/lib/libgcc_s.*: not
found

I am trying to figure out where this /usr/cc/lib comes from ...

   Jeremy C. Reed
   http://bsd.reedmedia.net/