GNOME Bugzilla – Bug 170809
Error compiling on Solaris 9 x86
Last modified: 2005-06-30 15:59:10 UTC
Please describe the problem: I am building the Gnome 2.10 packages on my Solaris (x86) PC and can't compile gstreamer-0.8.9. I do: $ ./configure $ make . . Making all in registries make[4]: Entering directory `/export/home/bolducfr/downloads/Gnome_2.10.0_sources/src/gstreamer-0.8.9/gst/registries' make[4]: Nothing to be done for `all'. make[4]: Leaving directory `/export/home/bolducfr/downloads/Gnome_2.10.0_sources/src/gstreamer-0.8.9/gst/registries' Making all in . make[4]: Entering directory `/export/home/bolducfr/downloads/Gnome_2.10.0_sources/src/gstreamer-0.8.9/gst' if /bin/bash ../libtool --mode=compile --tag=CC /usr/local/bin/gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/heimdal/include -I/usr/local/include/freetype2 -I/usr/local/include/glib-2.0/include -I/usr/local/include -I/usr/include -I/opt/sfw/include -I/usr/local/include/howl -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/silc/include -I/usr/X11R6/include -I/usr/openwin/include -I/opt/csw/include -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -threads -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-common -g -Wall -DGST_DISABLE_DEPRECATED -I.. -DG_LOG_DOMAIN=g_log_domain_gstreamer -DGST_MAJORMINOR=\""0.8"\" -O2 -g -MT libgstreamer_0.8_la-gstmemchunk.lo -MD -MP -MF ".deps/libgstreamer_0.8_la-gstmemchunk.Tpo" -c -o libgstreamer_0.8_la-gstmemchunk.lo `test -f 'gstmemchunk.c' || echo './'`gstmemchunk.c; \ then mv -f ".deps/libgstreamer_0.8_la-gstmemchunk.Tpo" ".deps/libgstreamer_0.8_la-gstmemchunk.Plo"; else rm -f ".deps/libgstreamer_0.8_la-gstmemchunk.Tpo"; exit 1; fi /usr/local/bin/gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/heimdal/include -I/usr/local/include/freetype2 -I/usr/local/include/glib-2.0/include -I/usr/local/include -I/usr/include -I/opt/sfw/include -I/usr/local/include/howl -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/silc/include -I/usr/X11R6/include -I/usr/openwin/include -I/opt/csw/include -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -threads -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-common -g -Wall -DGST_DISABLE_DEPRECATED -I.. -DG_LOG_DOMAIN=g_log_domain_gstreamer -DGST_MAJORMINOR=\"0.8\" -O2 -g -MT libgstreamer_0.8_la-gstmemchunk.lo -MD -MP -MF .deps/libgstreamer_0.8_la-gstmemchunk.Tpo -c gstmemchunk.c -fPIC -DPIC -o .libs/libgstreamer_0.8_la-gstmemchunk.o Assembler: gstmemchunk.c "/var/tmp//ccbjkQYY.s", line 1645 : Syntax error "/var/tmp//ccbjkQYY.s", line 1646 : Syntax error "/var/tmp//ccbjkQYY.s", line 1651 : Syntax error "/var/tmp//ccbjkQYY.s", line 1652 : Syntax error make[4]: *** [libgstreamer_0.8_la-gstmemchunk.lo] Error 1 Steps to reproduce: 1. ./configure 2. make Actual results: Consistent compile error on line 1645 Expected results: compile without errors Does this happen every time? yes Other information: I use: $ gcc --version gcc (GCC) 3.3.2 Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ automake --version automake (GNU automake) 1.9 Written by Tom Tromey <tromey@redhat.com>. Copyright 2004 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ autoconf --version autoconf (GNU Autoconf) 2.59 Written by David J. MacKenzie and Akim Demaille. Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ pkg-config --version 0.15.0 $
This kind of problem is caused by bad inline assembly code. The only way to get assembly in gstmemchunk.c is from valgrind. Do you have valgrind installed?
I just downloaded valgrind-2.4.0 and I cannot build it as it does not support Solaris Intel yet. Any other option? I got gstreamer-0.8.0 to compile and install properly. It start to break at version 0.8.1.
After the compilation fails, could you run 'make CFLAGS=-save-temps', and attach the resulting gstmemchunk.s file?
Created attachment 39557 [details] gstmemchunk.s from 'make CFLAGS=-save-temps' command As requested
Do you get the same line numbers in the error message as above? I can't find anything in the file around those line numbers. This is strange. Even stranger, the file you attached assembles fine here.
/usr/local/bin/gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/heimdal/include -I/usr/local/include/freetype2 -I/usr/local/include/glib-2.0/include -I/usr/local/include -I/usr/include -I/opt/sfw/include -I/usr/local/include/howl -I/usr/local/ssl/include -I/usr/local/BerkeleyDB.4.2/include -I/usr/local/silc/include -I/usr/X11R6/include -I/usr/openwin/include -I/opt/csw/include -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -threads -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/libxml2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fno-common -g -Wall -DGST_DISABLE_DEPRECATED -I.. -DG_LOG_DOMAIN=g_log_domain_gstreamer -DGST_MAJORMINOR=\"0.8\" -save-temps -MT libgstreamer_0.8_la-gsttrashstack.lo -MD -MP -MF .deps/libgstreamer_0.8_la-gsttrashstack.Tpo -c gsttrashstack.c -fPIC -DPIC -o .libs/libgstreamer_0.8_la-gsttrashstack.o Assembler: gsttrashstack.c "gsttrashstack.s", line 1059 : Syntax error "gsttrashstack.s", line 1060 : Syntax error "gsttrashstack.s", line 1065 : Syntax error "gsttrashstack.s", line 1066 : Syntax error make[4]: *** [libgstreamer_0.8_la-gsttrashstack.lo] Error 1 make[4]: Leaving directory `/export/home/bolducfr/downloads/Gnome_2.10.0_sources/src/gstreamer-0.8.9/gst'
With the save-temps option the message is now consistent on lines 1059-1060 and 1065-1066.
Created attachment 39672 [details] gsttrashstack.s from 'make CFLAGS=-save-temps' command Just a minute here... I just realized that the problem has shifted file??? Let me attach the file gsttrashstack.s mentioned above...
Created attachment 39682 [details] [review] Clean up asm code Could you apply this patch and see if it helps?
The patch worked. Thanks
Dave, please apply the patch. It no longer cleanly applies to HEAD CVS anyway...
Applied.