Date: Tue, 16 Oct 2012 03:50:01 GMT From: "Jason E. Hale" <jhale@freebsd.org> To: freebsd-ports-bugs@FreeBSD.org Subject: Re: ports/172745: The port sessreg does not compile in 9.1-PRERELEASE #23 Message-ID: <201210160350.q9G3o1Go098002@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/172745; it has been noted by GNATS. From: "Jason E. Hale" <jhale@freebsd.org> To: Joao Rocha Braga Filho <goffredo@gmail.com>, bug-followup@freebsd.org Cc: Subject: Re: ports/172745: The port sessreg does not compile in 9.1-PRERELEASE #23 Date: Mon, 15 Oct 2012 23:45:28 -0400 On Tuesday, October 16, 2012 00:12:45 Joao Rocha Braga Filho wrote: > On Mon, Oct 15, 2012 at 11:45 PM, Jason E. Hale <jhale@freebsd.org> wrote: > > This looks similar to ports/144525. Could try the advice in that PR and > > run: # cd /usr/src && make delete-old > > > Is the same problem, with other FreeBSD version (9.0) and port version > (sessreg 1.0.5 x sessreg 1.0.7). > > I searched in pr list, and missed it. > > In my computer: > > " > root:[152] find /usr/obj/ -name 'ttyslot*' -ls > 1183232 4 -rw-r--r-- 1 root wheel > 1344 Oct 13 15:46 /usr/obj/usr/src/lib/libc/ttyslot.o > 1184362 4 -rw-r--r-- 1 root wheel > 1344 Oct 13 15:47 /usr/obj/usr/src/lib/libc/ttyslot.So > 1189387 4 -rw-r--r-- 1 root wheel > 1488 Oct 13 17:15 /usr/obj/usr/src/lib/libc/ttyslot.po > 1508043 4 -rw-r--r-- 1 root wheel > 810 Oct 13 17:49 /usr/obj/lib32/usr/src/lib/libc/ttyslot.o > 1509178 4 -rw-r--r-- 1 root wheel > 892 Oct 13 17:50 /usr/obj/lib32/usr/src/lib/libc/ttyslot.po > 1510314 4 -rw-r--r-- 1 root wheel > 810 Oct 13 17:51 /usr/obj/lib32/usr/src/lib/libc/ttyslot.So > root:[153] > " > > But is more strange: > > " > root:[161] l /usr/lib/libc.* > 3456 -r--r--r-- 1 root wheel 3511792 Oct 13 16:16 /usr/lib/libc.a > 0 lrwxr-xr-x 1 root wheel 14 Oct 13 16:16 /usr/lib/libc.so > -> /lib/libc.so.7 > root:[162] nm /usr/lib/libc.a | grep ttyslot > ttyslot.o: > 0000000000000000 T __ttyslot > 0000000000000000 T ttyslot@FBSD_1.0 > root:[163] nm /lib/libc.so.7 | grep ttyslot > nm: /lib/libc.so.7: no symbols > root:[164] l /lib/libc.so.7 > 1344 -r--r--r-- 1 root wheel 1358392 Oct 13 16:16 /lib/libc.so.7 > " > > Why didn't compiled? > Because the ttyslot() function has been removed. > " > root:[173] make > ===> Building for sessreg-1.0.7 > make all-recursive > Making all in man > CCLD sessreg > sessreg.o: In function `main': > sessreg.c:(.text+0xc7a): undefined reference to `ttyslot' > *** [sessreg] Error code 1 > > Stop in /usr/ports/x11/sessreg/work/sessreg-1.0.7. > *** [all-recursive] Error code 1 > > Stop in /usr/ports/x11/sessreg/work/sessreg-1.0.7. > *** [all] Error code 1 > > Stop in /usr/ports/x11/sessreg/work/sessreg-1.0.7. > *** [do-build] Error code 1 > > Stop in /usr/ports/x11/sessreg. > " > If you upgraded this machine from FreeBSD < 9.0 at any point then you probably have some leftovers that need to be removed which is why I suggested running make delete-old > Or: > > " > goffredo:[1019] cc -s -o ttyslot_test3 ttyslot_test.c > /tmp//ccFx55lb.o: In function `main': > ttyslot_test.c:(.text+0xa): undefined reference to `ttyslot' > goffredo:[1020] cat ttyslot_test.c > > #include <stdio.h> > #include <unistd.h> > > > main() > { > printf( "%d\n",ttyslot() ); > } > > goffredo:[1021] cc -s -o ttyslot_test ttyslot_test.c > /tmp//ccKUda6b.o: In function `main': > ttyslot_test.c:(.text+0xa): undefined reference to `ttyslot' > goffredo:[1022] > " That won't compile since ttyslot is not in stdlib.h anymore in FreeBSD 9.x. All ttyslot() does now is return 0. See: http://svnweb.freebsd.org/base/release/9.0.0/lib/libc/gen/ttyslot.c?view=log
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210160350.q9G3o1Go098002>