On Tue, Aug 09, 2005 at 10:27:33AM -0700, Seth Brutzman wrote:
Alright, I've been tracking this with bug #1253415 as I find out about more about it, and I've come to understand the following:
--When the source is being organized for compilation (I'm not sure, is this autogen.sh or configure, or is there any such setup performed?), all *.o files related to mmx support end up in $topsrcdir/src/ rather than $topsrcdir/src/libnr/ where they belong --To compile with mmx support, moving all the files to the appropriate directory is necessary. #mv $topsrcdir/src/*_mmx*.o $topsrcdir/src/libnr/ accomplishes this --Continue build normally
It was simple enough, once I found all the hangup files. What I don't understand, though, is where does this program originate? Is it configure? autogen.sh? Or is the problem all the way back to where the files are in the source tree?
Just thought I'd shed some more light on this.
Hmm, interesting. This suggests it is a build system issue.
My guess is that in the Makefile, the definition for turning .S files in to .o files has an error.
Look in your Makefile, for something that looks like this:
.S.o: $(CCASCOMPILE) -c `test -f '$<' || echo '$(srcdir)/'`$<
and
libnr/have_mmx.o: libnr/have_mmx.S $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS) -c -o libnr/have_mmx.o `test -f 'libnr/have_mmx.S' || echo '$(srcdir)/'`libnr/have_mmx.S
etc.
Note how it specifies that have_mmx.o is directed to output (-o) into libnr/have_mmx.o. I am guessing that perhaps on your system it may be outputting to have_mmx.o directly. Or something else similarly wacky.
Anyway, see what's in your Makefile and if it corresponds to what I have in mind, and we'll go from there.
Bryce