After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 121184 - [PATCH] ffmpeg requires gcc on x86 (at least)
[PATCH] ffmpeg requires gcc on x86 (at least)
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins
0.6.3
Other opensolaris
: Normal critical
: 0.6.4
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2003-09-01 14:56 UTC by Damien Carbery
Modified: 2004-12-22 21:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch to disable ffmpeg for non-gcc (673 bytes, patch)
2003-09-03 04:18 UTC, David Schleef
none Details | Review

Description Damien Carbery 2003-09-01 14:56:29 UTC
The Sun ONE Studio 8 compiler doesn't appear to like colons outside quotes
in asm() code.

Makefile and compiler output:
cc -g -I/opt/gnome-2.4/include -g -DHAVE_AV_CONFIG_H -I..
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -c -o common.o
common.c 
"bswap.h", line 11: syntax error before or at: :
"bswap.h", line 26: syntax error before or at: :
"bswap.h", line 36: syntax error before or at: __extension__
"bswap.h", line 38: syntax error before or at: :
"common.h", line 183: syntax error before or at: :
"common.h", line 190: syntax error before or at: :
cc: acomp failed for common.c
make[6]: *** [common.o] Error 2
make[6]: Leaving directory
`/gnome/2.4/nightly/src-2.4-20030901/gst-plugins-0.6.3/gst-libs/ext/ffmpeg/ffmpeg/libavcodec'

I think (example from bswap.h):
 __asm("bswap	%0":
      "=r" (x)     :
can be changed to:
  /* Put all text in quotes in separate statements. */
 __asm("bswap	%0:" );
 __asm("=r (x)     :" );
but I know absolutely no assembly.

In /usr/include/prof.h (only file in that dir with 'asm()'):
#if defined(__i386)
#define MARK(K) {\
		asm("	.data"); \
		asm("	.align 4"); \
		asm("."#K".:"); \
		asm("	.long 0"); \
		asm("	.text"); \
		asm("M."#K":"); \
		asm("	movl	$."#K"., %edx"); \
		asm("	call _mcount"); \
		}
#endif
Note the individual statements and colons within quotes.
Comment 1 David Schleef 2003-09-03 04:17:05 UTC
For now, you'll have to use --disable-ffmpeg, since ffmpeg only builds
with gcc.  The attached patch should help, too, but I think ffmpeg
compiles fine on Solaris/sparc (please check this if you can).
Comment 2 David Schleef 2003-09-03 04:18:27 UTC
Created attachment 19685 [details] [review]
patch to disable ffmpeg for non-gcc
Comment 3 Christian Fredrik Kalager Schaller 2003-09-27 16:57:16 UTC
Tested this patch on 0.6 and it didn't break the build on x86 at least
:) problably ready for commit :)
Comment 4 Thomas Vander Stichele 2003-10-05 16:52:01 UTC
commited to 0.6.3.1, closing