[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

pwlib 1.8.7 does not build on alpha due with -Os



>Submitter-Id:	net
>Originator:	
>Confidential:	no
>Synopsis:	pwlib 1.8.7 does not build on alpha due with -Os
>Severity:	serious 
>Priority:	medium 
>Category:	c++
>Class:		wrong-code 
>Release:	4.0.3 20051201 (prerelease) (Debian 4.0.2-5) (Debian testing/unstable)
>Environment:
System: Linux cyclop 2.6.12-1-alpha-generic #1 Tue Sep 6 22:36:56 UTC 2005 alpha GNU/Linux
Architecture: alpha

	
host: alpha-unknown-linux-gnu
build: alpha-unknown-linux-gnu
target: alpha-unknown-linux-gnu
configured with: ../src/configure -v --enable-languages=c,c++,java,f95,objc,ada,treelang --prefix=/usr --enable-shared --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --enable-nls --program-suffix=-4.0 --enable-__cxa_atexit --enable-clocale=gnu --enable-libstdcxx-debug --enable-java-awt=gtk --enable-gtk-cairo --with-java-home=/usr/lib/jvm/java-1.4.2-gcj-4.0-1.4.2.0/jre --enable-mpfr --disable-werror --enable-checking=release alpha-linux-gnu
>Description:
	While building the pwlib package on alpha, the following problem occured:
	http://buildd.debian.org/fetch.php?&pkg=pwlib&ver=1.8.7-1&arch=alpha&stamp=1131832002&file=log&as=raw
	The build does involve a testrun after linking the library. This testrun is compiling and executing the hello-world sample application. The same problem could be duplicated with the pwlib CVS HEAD code (1.9.0) and was tracked down to be happening with the default -Os optimization. The backtrace is for the 1.9.0 compile:

	(sid)kk@cyclop:~/src/pwlib-1.9.0$ gdb samples/hello_world/obj_*_r/hello
	GNU gdb 6.3-debian
	Copyright 2004 Free Software Foundation, Inc.
	GDB is free software, covered by the GNU General Public License, and you are
	welcome to change it and/or distribute copies of it under certain conditions.
	Type "show copying" to see the conditions.
	There is absolutely no warranty for GDB.  Type "show warranty" for details.
	This GDB was configured as "alpha-linux"...r
	Using host libthread_db library "/lib/libthread_db.so.1".

	(gdb) r
	Starting program: /usr/local/src/pwlib-1.9.0/samples/hello_world/obj_linux_alpha_r/hello 
	[Thread debugging using libthread_db enabled]
	[New Thread 16384 (LWP 13665)]

	Program received signal SIGILL, Illegal instruction.
	[Switching to Thread 16384 (LWP 13665)]
	0x00000001200c2e80 in vtable for P_YUV422_YUV422 ()
	(gdb) bt
	#0  0x00000001200c2e80 in vtable for P_YUV422_YUV422 ()
	#1  0x00000001200a4574 in PFactory<PURLScheme, PString>::GetInstance () at pfactory.h:338
	#2  0x00000001200a4a88 in PFactory<PURLScheme, PString>::Register (key=@0x11f9b5988, worker=0x12010a080) at pfactory.h:275
	#3  0x00000001200a4b0c in Worker (this=0x12010a080, key=@0x11f9b5988, singleton=Variable "singleton" is not available.
	) at pfactory.h:263
	#4  0x000000012009e144 in __static_initialization_and_destruction_0 (__initialize_p=Variable "__initialize_p" is not available.
	) at ../../ptclib/http.cxx:476
	#5  0x00000001200b53b8 in __do_global_ctors_aux ()
	#6  0x000000012000b598 in _init ()
	#7  0x00000001200b5254 in __libc_csu_init ()
	#8  0x00000001200b5254 in __libc_csu_init ()
	#9  0x0000020000029ce8 in ?? () from /lib/ld-linux.so.2
	#10 0x00000001200b5254 in __libc_csu_init ()
	Cannot access memory at address 0x1200fe8f0
	(gdb) 

>How-To-Repeat:
	Rebuilding pwlib&samples/hello will hit that bug each time.
>Fix:
	Replace -Os by -O2 (as was patched for 1.8.7-2). See last entry in:
	http://svn.debian.org/wsvn/pkg-voip/pwlib/trunk/debian/patches/01_alpha.dpatch?op=file&rev=0&sc=0


As this is my first use of gccbug, please ask for more information if I have obviously forgotten something. ;)

-- 
Best regards,
 Kilian



Reply to: