[FFmpeg-devel] [PATCH] Non-recursive makefiles

Axel Holzinger aholzinger
Fri Apr 11 10:09:11 CEST 2008


Hi Diego,

Diego Biurrun wrote:
> On Thu, Apr 10, 2008 at 06:19:55PM +0200, Axel Holzinger wrote:
> > Axel Holzinger wrote:
> > > 
> > > Victor Paesa wrote:
> > > >
> > > > M?ns Rullg?rd said:
> > > > >
> > > > > Fixed.  Can you please confirm on cygwin?
> > > >
> > > > Thanks, now it works OK for me on Cygwin.
> > > 
> > > Unfortunately doesn't work on Msys/Mingw:
> > > 
> > > $ ./configure --enable-static --enable-memalign-hack
> > > 
> > > $ make
> > > make: *** No rule to make target 
> `libavdevice/libavdevice.a', needed 
> > > by `all'.  Stop.
> > > 
> > > ffmpeg r12781
> > 
> > The makes oft he different libs work fine, when called directly:
> > $ cd libavdevice
> > $ make
> > 
> > When all libs are built, the FFmpeg make works and FFmpeg is
built.
> > 
> > Is there perhaps a problem with the paths in the makefile 
> for FFmpeg 
> > so that the lib makefiles aren't found for some reason?
> 
> Do you have spaces somewhere in your path?

No, not at all.

I thought it might have something to do with my FFmpeg directory
residing on a different drive (path something like /F/bla/ffmpeg) and
so I digged a little into make and looked at the make internals (make
-p) and saw that there are several paths that look like f: which
msysys won't like. So I moved the whole directory to
/home/myusername/ffmpeg, but same result.

I then noticed that there is a newer make in Mingw. And I found out
that the different make versions all behave differently with the
FFmpeg makefile.

In the past I could build FFmpeg without a problem with make 3.79, so
it is quite probable that a change in the makefile (or configure
script) made Mingw (at least some installations) behave nasty.

I used make 3.79 in the past and only with 3.79 I can build FFmpeg by
manually building the libs and then building FFmpeg afterwards. This
works as a workaround.

With make 3.81-20080326, make is starting the build, but I get several
errors 'missing binary operator before token "("'.

Make 3.81-2 behaves different, but build still doesn't work (I'm
writing this on a different location, so I don't have the details,
will send them later today).

I'm willing to test this thorougly and report results. If you (or
anybody of the FFmpeg developers) think that this is a user thread
(because we are talking about building FFmpeg), please feel free to
tell me and I will change over to ffmpeg-user. I think because a
chnage in the makefile/configure script broke FFmpeg build (at least
on Mingw on my system) there might be an issue in the configure
script.

For the records: With make 3.79 building separately works. This isn't
possible with make 3.81-2 nor latest 3.81-20080326.

Regards
Axel





More information about the ffmpeg-devel mailing list