Date: Tue, 4 Jan 2005 12:29:20 +0300 (MSK) From: Oleg Sharoiko <os@rsu.ru> To: FreeBSD-gnats-submit@freebsd.org Cc: ports@freebsd.org Subject: lang/gcc32 uses libc_r instead of libpthread on 5.3 Message-ID: <200501040929.j049TKpB056997@brain.cc.rsu.ru>
next in thread | raw e-mail | index | archive | help
>Submitter-Id: current-users >Originator: Oleg Sharoiko >Organization: Computer Center of Rostov State University >Confidential: no >Synopsis: lang/gcc32 uses libc_r instead of libpthread on 5.3 >Severity: serious >Priority: medium >Category: ports >Class: sw-bug >Release: FreeBSD 5.3-STABLE i386 >Environment: System: FreeBSD wolf.os.rsu.ru 5.3-STABLE FreeBSD 5.3-STABLE #0: Sat Jan 1 21:36:31 MSK 2005 os@wolf.os.rsu.ru:/usr/obj/usr/src/sys/wolf.os.i686.RELENG_5.2005-01-01 i386 >Description: The commit http://docs.freebsd.org/cgi/getmsg.cgi?fetch=305919+0+archive/2004/cvs-all/20041226.cvs-all broke selection of pthreads library on 5.3 wolf, ~/src/test > uname -a FreeBSD wolf.os.rsu.ru 5.3-STABLE FreeBSD 5.3-STABLE #0: Sat Jan 1 21:36:31 MSK 2005 os@wolf.os.rsu.ru:/usr/obj/usr/src/sys/wolf.os.i686.RELENG_5.2005-01-01 i386 With system compiler: wolf, ~/src/test > gcc -v Using built-in specs. Configured with: FreeBSD/i386 system compiler Thread model: posix gcc version 3.4.2 [FreeBSD] 20040728 wolf, ~/src/test > gcc -Wall -pedantic -pthread test_pth.c -o test_pth wolf, ~/src/test > ldd test_pth test_pth: libpthread.so.1 => /usr/lib/libpthread.so.1 (0x28081000) libc.so.5 => /lib/libc.so.5 (0x280a7000) With gcc32 from ports wolf, ~/src/test > gcc32 -v Reading specs from /usr/local/lib/gcc-lib/i386-portbld-freebsd5.3/3.2.3/specs Configured with: ./..//gcc-3.2.3/configure --disable-nls --with-gxx-include-dir=/usr/local/lib/gcc-lib/i386-portbld-freebsd5.3/3.2.3/include/g++-v3 --with-system-zlib --includedir=/usr/local/lib/gcc-lib/i386-portbld-freebsd5.3/3.2.3/include/Java --disable-shared --prefix=/usr/local i386-portbld-freebsd5.3 Thread model: posix gcc version 3.2.3 wolf, ~/src/test > gcc32 -Wall -pedantic -pthread test_pth.c -o test_pth wolf, ~/src/test > ldd test_pth test_pth: libc_r.so.5 => /usr/lib/libc_r.so.5 (0x28081000) libc.so.5 => /lib/libc.so.5 (0x280a5000) This at least breaks editors/openoffice-1.1 linking it's binaries against both libc_r and libpthread. Number of people complained on freebsd-openoffice: http://docs.freebsd.org/cgi/getmsg.cgi?fetch=15561+0+archive/2004/freebsd-openoffice/20041231.freebsd-openoffice http://docs.freebsd.org/cgi/getmsg.cgi?fetch=53386+0+archive/2004/freebsd-openoffice/20041231.freebsd-openoffice http://docs.freebsd.org/cgi/getmsg.cgi?fetch=0+0+archive/2004/freebsd-openoffice/20041231.freebsd-openoffice >How-To-Repeat: Builg lang/gcc32 Try to link with -pthread Check libs with ldd It's also possible to check /usr/local/lib/gcc-lib/i386-portbld-freebsd5.3/3.2.3/specs for pthread libs specification >Fix: Either rollback the commit or change the patch-gcc,config,freebsd-spec.h It may have sence that gcc/config/freebsd-spec.h has a note in comments that __FreeBSD_version from osreldate.h can not be used because it breaks cross-compilation. No sure what would be the best solution so I leave it for someone more competent to decide.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200501040929.j049TKpB056997>