Opened 17 years ago
Closed 17 years ago
#1073 closed defect (fixed)
compilation failure on PPC without AltiVec
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | normal | Component: | build system |
Version: | HEAD | Severity: | normal |
Keywords: | Cc: | eternalsword@… | |
Blocked By: | Blocking: | ||
Reproduced by developer: | no | Analyzed by developer: | no |
Description
I'll attach full logs of running configure and make in a reply. I've got svn revision 26606 on a fully up to date debian testing. I'm using the debian-multimedia repository for some of the libraries. I built x264 against whatever the current git head was two days ago.
I have tried building with --disable-altivec with no difference. I have tried building with --enable-altivec and it builds successfully but get the following error when I try to run it.
MPlayer dev-SVN-r26606-4.2.3 (C) 2000-2008 MPlayer Team
AltiVec not found
CPU: PowerPC
Playing somefile.mov.
libavformat file format detected.
MPlayer interrupted by signal 4 in module: demux_open
- MPlayer crashed by an 'Illegal Instruction'. It usually happens when you run it on a CPU different than the one it was compiled/optimized for. Verify this!
- MPlayer crashed by bad usage of CPU/FPU/RAM. Recompile MPlayer with --enable-debug and make a 'gdb' backtrace and disassembly. Details in DOCS/HTML/en/bugreports_what.html#bugreports_crash.
- MPlayer crashed. This shouldn't happen. It can be a bug in the MPlayer code _or_ in your drivers _or_ in your gcc version. If you think it's MPlayer's fault, please read DOCS/HTML/en/bugreports.html and follow the instructions there. We can't and won't help unless you provide this information when reporting a possible bug.
Attachments (8)
Change History (31)
by , 17 years ago
Attachment: | configure.full.log added |
---|
comment:1 by , 17 years ago
comment:2 by , 17 years ago
comment:4 by , 17 years ago
Here's the full cpu information as provided by the proc system.
cat /proc/cpuinfo
processor : 0
cpu : 750CXe
temperature : 19-21 C (uncalibrated)
clock : 600.000000MHz
revision : 34.20 (pvr 0008 2214)
bogomips : 49.79
timebase : 24960000
platform : PowerMac
machine : PowerMac4,1
motherboard : PowerMac4,1 MacRISC2 MacRISC Power Macintosh
detected as : 256 (iMac "Flower Power")
pmac flags : 00000010
L2 cache : 256K unified
pmac-generation : NewWorld
comment:5 by , 17 years ago
Cc: | added |
---|
comment:6 by , 17 years ago
I tried using the mplayer made available by the debian-multimedia repository and that one worked. Here's the mplayer version output: MPlayer dev-SVN-r25315
by , 17 years ago
Attachment: | mplayer_1.0.rc2svn20071207-0.3.diff added |
---|
diff file used by debian-multimedia control system
comment:7 by , 17 years ago
I'm including this because when I tried to build the working revision used by debian-multimedia, the build failed (though at a different point, see error below). So their diff file is probably a good starting point for figuring out what's wrong.
The error I got when building debian-multimedia's working revision was
make -C libswscale
make[1]: Entering directory `/home/guest/build/mplayer/libswscale'
cc -DHAVE_AV_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_ISOC9X_SOURCE -I.. -I.. -I../libavutil -Wdisabled-optimization -Wno-pointer-sign -Wdeclaration-after-statement -I. -I.. -I../libavutil -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -O4 -pipe -ffast-math -fomit-frame-pointer -D_REENTRANT -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -DHAVE_CONFIG_H -I/usr/include/freetype2 -c -o rgb2rgb.o rgb2rgb.c
In file included from ../libavutil/common.h:86,
from ../libavutil/avutil.h:53,
from swscale.h:31,
from rgb2rgb.c:32:
../libavutil/internal.h:273: error: static declaration of 'llrint' follows non-static declaration
../libavutil/internal.h:294: error: static declaration of 'round' follows non-static declaration
../libavutil/internal.h:301: error: static declaration of 'roundf' follows non-static declaration
make[1]: * [rgb2rgb.o] Error 1
make[1]: Leaving directory `/home/guest/build/mplayer/libswscale'
make: * [libswscale/libswscale.a] Error 2
I'll try to sort through the diff file to see what might be helpful.
comment:8 by , 17 years ago
Just to clarify, I have not yet tried applying debian-multimedia's patch, so I have not yet been able to build a working mplayer myself to this point.
comment:9 by , 17 years ago
Status: | new → assigned |
---|
comment:10 by , 17 years ago
Summary: | build fails on imac graphite ppc 750CXe → compilation failure on PPC without AltiVec |
---|
comment:11 by , 17 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
I just fixed the compilation failure. There is still a linking issue left, but I have already analyzed it and will commit a fix shortly.
comment:12 by , 17 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
unfortunately compilation still does not work for me. I'll post updated logs for revision 26632
comment:13 by , 17 years ago
attachments.isobsolete: | 0 → 1 |
---|
comment:14 by , 17 years ago
attachments.isobsolete: | 0 → 1 |
---|
comment:15 by , 17 years ago
attachments.isobsolete: | 0 → 1 |
---|
comment:16 by , 17 years ago
attachments.mimetype: | application/octet-stream → text/plain |
---|
comment:17 by , 17 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
problem fixed as of revision 26642
comment:18 by , 17 years ago
Resolution: | fixed |
---|---|
Status: | closed → reopened |
Unfortunately, I spoke too soon. The mplayer that was working was the one from debian-multimedia which I had forgotten to remove. So mplayer built successfully, but I had the MPlayer crashed by an 'Illegal Instruction' error when trying to run it.
comment:19 by , 17 years ago
the configure from r26643 now forces altivec even when the --disable-altivec flag is provided.
by , 17 years ago
Attachment: | trunk.diff added |
---|
diff between mplayer libmpeg2 and svn://svn.videolan.org/libmpeg2/trunk
comment:20 by , 17 years ago
generated by using: diff -u /build/mplayer/libmpeg2 /build/libmpeg2/libmpeg2
comment:21 by , 17 years ago
forgot to mention that I am attaching this because I was able to successfully compile and run mpeg2dec from this version of libmpeg2
comment:22 by , 17 years ago
I was able to build and run r26676 by doing the following, I'm guessing because of the updates to libmpeg2.
1)Run configure
2)Edit config.h to change
#define HAVE_ALTIVEC 1 -> #undef HAVE_ALTIVEC
#define ENABLE_ALTIVEC 1 -> #define ENABLE_ALTIVEC 0
#define HAVE_ALTIVEC_H 1 -> #undef HAVE_ALTIVEC_H
3)Edit config.mak to remove all -maltivec -mabi=altivec occurrences
4)make and make install
I'm guessing undoing the revision 26642 changeset to the configure file will fix having to change the config.h and config.mak files, since as of that revision, I could no longer even manually disable altivec via --disable-altivec
comment:23 by , 17 years ago
Resolution: | → fixed |
---|---|
Status: | reopened → closed |
Next try, should really be fixed now...
This is the output from running ./configure