[MEncoder-users] MEncoder build problem

Michael Rozdoba mroz at ukgateway.net
Sat Oct 6 02:36:48 CEST 2007


I've written a small patch to address the Avisynth/MT issue, but before 
I can test it I obviously need to be able to build MPlayer.

I'm following the guide at http://ivonet.nl/static/mencoder.html though 
initially wasn't paying too much attention to supporting lots of codecs 
- I just want something that runs for this test.

As I already have Cygwin installed I've opted to build with MinGW via 
Cygwin.

Atm I'm failing at the configure stage:
  ) ... failed (Upgrade binutils to 2.9.1 
...)cc/mingw32/3.4.2/../../../../mingw32/bin/as.exe

Error: obsolete binutils version

Needless to say, the installed vsn of as (which is the one it's 
checking) is 2.16.91. I've investigated. Alas my grasp of shell 
scripting is poor so this is slow going.

The problem line in configure is around 2253:
$_as $TMPS -o $TMPO > /dev/null 2>&1 || as_verc_fail=yes

I've manually ran the same tests. The code sample in the temp file 
assembles for all combinations of test opcodes, but for some reason the 
above line is concluding it failed.

 From my various tests from the command line, the invocation of as 
produces no output on stdout & no output on stderr. The above 
redirection seems to send both stdout & stderr to null. Certainly stderr 
is going to null as when I change the assembler code to include an 
illegal instruction the redirection throws this response away.

Given this, how is the above meant to differentiate between success & 
failure? Using the return code from as?

Even then I'm still confused: success returns 0 which would surely cause 
the above expression to evalute as_verc_fail=yes, in so doing flagging 
an incorrect state, which can't be intended behviour.

That said, the above code sets the variable to yes regardless of whether 
  as returns 1 or 0, so it can't be relying on the return code.

My guess would be the left side of the || evaluates to whatever it sends 
to stdout, but that's always null... which would explain the results I'm 
getting, but that can't be right as the script would be obviously 
incorrect & fail for everyone.

WTF?

I'm lost. Can anyone offer pointers to help me get a clue?

-- 
Michael Rozdoba



More information about the MEncoder-users mailing list