[MPlayer-users] Can't compile latest MPLayer CVS

Sascha Sommer saschasommer at freenet.de
Sat Oct 30 09:24:13 CEST 2004


On Saturday 30 October 2004 01:22, Christian wrote:
> Hi Torinthiel,
> I use the very last CSV version of the whole mplayer tree.
>
> The lines that cause problem are those ones, in libao2/ao_pcm.c :
> static struct WaveHeader wavhdr = {
>         le2me_32(WAV_ID_RIFF),
>         /* same conventions than in sox/wav.c/wavwritehdr() */
>         0, //le2me_32(0x7ffff024),
>         le2me_32(WAV_ID_WAVE),
>         le2me_32(WAV_ID_FMT),
>         le2me_32(16),
>         le2me_16(WAV_ID_PCM),
>         le2me_16(2),
>         le2me_32(44100),
>         le2me_32(192000),
>         le2me_16(4),
>         le2me_16(16),
>         le2me_32(WAV_ID_DATA),
>         0, //le2me_32(0x7ffff000)
> };
>
> From what I understand, the "le2me_32" macro is meant to swap bytes on
> big-endian architectures and expands to some assembly code that the
> compiler rejects as a static initialization. Don't ask me why ! There's
> much too much magic here for me :-) This macro is defined in main/bswap.h.
>
> Now from the configure.log file I can see that the ./configure script
> thinks my AMD Duron processor is big-endian, which I guess it is not. This
> could be the culprit.

Ouch. Guess it is my fault then but I don't understand why.
Can you please compile this little program and send me the binary?

short ascii_name[] = { (('M'<<8)|'P'),(('l'<<8)|'a'),(('y'<<8)|'e'),(('r'<<8)|
0)};
int main(){
  char* s = (char*)ascii_name;
  return 0;
} 

I also need configure.log

Sascha




More information about the MPlayer-users mailing list