Subject: Re: xsrc/28630: Reachover X11 is missing phtread library.
To: James Chacon <jmc@netbsd.org>
From: Juergen Hannken-Illjes <hannken@eis.cs.tu-bs.de>
List: netbsd-bugs
Date: 12/12/2004 22:01:22
On Sun, Dec 12, 2004 at 02:03:36PM -0600, James Chacon wrote:
> On Sun, Dec 12, 2004 at 12:06:00PM +0000, Juergen Hannken-Illjes wrote:
> > >Number:         28630
> > >Category:       xsrc
> > >Synopsis:       Reachover X11 is missing phtread library.
> > >Confidential:   no
> > >Severity:       critical
> > >Priority:       high
> > >Responsible:    xsrc-manager
> > >State:          open
> > >Class:          sw-bug
> > >Submitter-Id:   net
> > >Arrival-Date:   Sun Dec 12 12:06:00 +0000 2004
> > >Originator:     Juergen Hannken-Illjes
> > >Release:        NetBSD 2.99.11
> > >Organization:
> > 	
> > >Environment:
> > 	
> > 	
> > Architecture: i386
> > Machine: i386
> > >Description:
> > 	
> > 	Reachover X11 build stops with:
> > 
> > 	#      link  appres/appres
> > 	/build/dist/obj/i386/tooldir.NetBSD-2.0-i386/bin/i386--netbsdelf-gcc -Wl,-nostdlib   -Wl,-rpath-link,/build/dist/dist/i386/usr/X11R6/lib  -R/usr/X11R6/lib  -L/build/dist/dist/i386/usr/X11R6/lib   -o appres  -Wl,-rpath-link,/build/dist/dist/i386/lib:/build/dist/dist/i386/usr/lib  -L/build/dist/dist/i386/lib  -B/build/dist/dist/i386/usr/lib/ -B/build/dist/dist/i386/usr/lib/   appres.o -lXt -lSM -lICE -lXext -lX11   -L/build/dist/dist/i386/usr/lib -L/build/dist/dist/i386/usr/lib
> > 	/build/dist/dist/i386/usr/X11R6/lib/libXt.so: undefined reference to `pthread_cond_wait'
> > 	collect2: ld returned 1 exit status
> > 
> > 	May be the result of this commit:
> > 
> > 	http://mail-index.netbsd.org/source-changes/2004/12/10/0018.html
> > >How-To-Repeat:
> > 	
> > 	Try to build distribution with reachover X11.
> > >Fix:
> > 	
> 
> What are your build.sh arguments and is this from clean source/objects or
> a make UPDATE=1 (build.sh -u) build?

A clean build with:
    rm -rf /build/dist/obj/i386 /build/dist/dist/i386
    /build/dist/src/build.sh -m i386 -O /build/dist/obj/i386 -D /build/dist/dist/i386 -X /build/dist/xsrc -x -r distribution

From the log:

    #     build  Xt/libXt.so.6.0
    rm -f libXt.so.6.0
    /build/dist/obj/i386/tooldir.NetBSD-2.0-i386/bin/i386--netbsdelf-gcc -Wl,-nostdlib -B/build/dist/dist/i386/usr/lib/ -B/build/dist/dist/i386/usr/lib/   -Wl,-rpath-link,/build/dist/dist/i386/lib:/build/dist/dist/i386/usr/lib  -L/build/dist/dist/i386/lib  -Wl,-x -shared -Wl,-soname,libXt.so.6  -Wl,-rpath-link,/build/dist/dist/i386/usr/X11R6/lib  -R/usr/X11R6/lib  -L/build/dist/dist/i386/usr/X11R6/lib -o libXt.so.6.0  -Wl,--whole-archive libXt_pic.a  -Wl,--no-whole-archive  -L/build/dist/obj/i386/x11/lib/X11/dynamic -lX11 -L/build/dist/obj/i386/x11/lib/SM -lSM -L/build/dist/obj/i386/x11/lib/ICE -lICE  -L/build/dist/dist/i386/usr/lib


So neither libXt.so nor appres get the thread library (-lpthread).

-- 
Juergen Hannken-Illjes - hannken@eis.cs.tu-bs.de - TU Braunschweig (Germany)