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@macports.org