Missing libavcodec library in ffmpeg port

David Liontooth liontooth at cogweb.net
Mon Apr 16 21:57:27 PDT 2007


Hi Maun Suang,

Boey Maun Suang wrote:
> Hi David,
>
>>> I just downloaded ffmpeg and it appears to be missing the
>>> libavcodec.dylib.51.9.0 library:
>
> I've finally got around to looking at it, and the answer is quite
> simple: the ffmpeg port isn't configured to build shared libraries at
> the moment -- static libraries only is the default setting for the
> ffmpeg source.  Unfortunately, just adding "--enable-shared" isn't
> working, as I'm then getting build failures; I'll email the maintainer
> once I get something working and I'll keep you posted.
Thank you for looking at this! ffmpeg is of course a complex project and
they don't do formal releases. The reason I was hopeful is that someone
else successfully built transcode using macports libraries, though from
a previous macports release. The problem appears to be recent.

On the other hand, as Mark Duling points out, the latest svn rev is
8743, so our version 6399 may be better retired, especially if you're
seeing build failures with shared libraries. Perhaps the ffmpeg-devel
list would help out with build problems -- cf.
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/45610/focus=45617
for a recent discussion.

I didn't realize FreeBSD uses the port package manager -- I don't know
enough about this to comment on Mark Duling's link to the FreeBSD port file.

I was expecting .so files; thanks for the details on the naming
conventions. I usually work on Linux, and am just trying to get an
idling XServe to be put to some useful work.

For fun, I tried this:

    svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
    ./configure --enable-shared --disable-vhook
    make

Looks like it compiled fine -- that's version 8743.

Cheers,
David

>
>>> A friend tells me I should be seeing this:
>>>
>>> /opt/local/lib/libavcodec.dylib -> libavcodec.dylib.51.9.0
>>> /opt/local/lib/libavcodec.dylib.51.9.0
>
> FYI, that's not quite the naming convention on Mac OS X.  On Linux at
> least, shared libraries (a.k.a. dynamic libraries) have the extension
> ".so" and their version numbers come after that if they are explicitly
> given in the filename, e.g.:
>
> libavcodec.so
> libavcodec.so.51.9.0
>
> Your friend is half-right with respect to Mac OS X: the shared
> libraries have the extension ".dylib", but the version number comes
> before that extension, e.g.:
>
> libavcodec.dylib
> libavcodec.51.9.0.dylib
>
> But that's just by-the-by :-)
>
> Kind regards,
>
>
> Maun Suang
>
> --Boey Maun Suang (Boey is my surname)
> Email: boeyms at macports.org
>
>
>




More information about the macports-users mailing list