[Ffmpeg-devel] [MacIntel] ranlib issue
Tue Aug 15 21:30:12 CEST 2006
On Mon, Aug 14, 2006 at 09:23:48PM +0200, Ulrich von Zadow wrote:
> Diego Biurrun wrote:
> >On Sun, Aug 13, 2006 at 11:27:04AM +0200, Ulrich von Zadow wrote:
> >>Diego Biurrun wrote:
> >>>On Sat, Aug 12, 2006 at 08:29:34PM +0200, Ulrich von Zadow wrote:
> >>>>It is still nessesary to run ranlib on the static libraries after make
> >>>>install, though, so make install is missing a step.
> >>>Hmmm? ranlib is run on the static libraries, look at the rule in the
> >>>Makefile that creates them:
> >>>$(LIB): $(STATIC_OBJS)
> >>> rm -f $@
> >>> $(AR) rc $@ $^ $(EXTRAOBJS)
> >>> $(RANLIB) $@
> >>The error is '../lib/libavformat.a is out of date; rerun ranlib(1)
> >>(can't load from it)'. Running ranlib after install solves the issue.
> >>This is Mac-specific.
> >Please try the attached patch, if you can test it on PPC as well as
> >Intel that would be a plus.
> No change: ranlib needs to be executed for static libraries, not dynamic
> ones, and it also needs parameters.
> Anyway, the patch gave me enough pointers to work on the issue myself
> :-). Attached is a patch based on yours that fixes it. Since I have no
> idea whatsoever if this fits into the overall structure or breaks other
> plattforms, you'll probably want to change things.
Oh, silly me, I put the declaration along with the shared library stuff
where it might not be enabled for static builds...
> --- common.mak (revision 5990)
> +++ common.mak (working copy)
> @@ -69,6 +69,7 @@
> install-lib-static: $(LIB)
> install -d "$(libdir)"
> install -m 644 $(LIB) "$(libdir)"
> + $(LIB_INSTALL_EXTRA_CMD) "$(libdir)"/$(LIB)
This is not correct, if $(LIB_INSTALL_EXTRA_CMD) is not set it will
attempt to run "$(libdir)"/$(LIB), which will result in an error...
Anyway, I think I've fixed it portably and properly. Report back if I
More information about the ffmpeg-devel