ports/75785: lang/gcc32 uses libc_r instead of libpthread on 5.3

Oleg Sharoiko os at rsu.ru
Tue Jan 4 09:30:29 UTC 2005


>Number:         75785
>Category:       ports
>Synopsis:       lang/gcc32 uses libc_r instead of libpthread on 5.3
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jan 04 09:30:28 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Oleg Sharoiko
>Release:        FreeBSD 5.3-STABLE i386
>Organization:
Computer Center of Rostov State University
>Environment:
System: FreeBSD wolf.os.rsu.ru 5.3-STABLE FreeBSD 5.3-STABLE #0: Sat Jan 1 21:36:31 MSK 2005 os at 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 at 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.

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list