[x264-devel] [PATCH] Fix shared libs on MacOSX

Guillaume POIRIER poirierg at gmail.com
Sat Mar 29 21:01:18 CET 2008


Hello,

2008/3/29 İsmail Dönmez <ismail at namtrac.org>:
> On Sat, Mar 29, 2008 at 9:37 PM, Alexander Strange
>  <astrange at ithinksw.com> wrote:
>  >
>  >  On Mar 29, 2008, at 3:35 PM, Guillaume POIRIER wrote:
>  >  >
>  >  >>> ld: common symbols not allowed with MH_DYLIB output format with the
>  >  >>> -multi_module option
>  >  >>> common/dct.o definition of common _x264_dct4_weight2_zigzag (size
>  >  >>> 128)
>  >  >>> common/dct.o definition of common _x264_dct8_weight2_zigzag (size
>  >  >>> 512)
>  >  >>> encoder/analyse.o definition of common _x264_cost_mv_fpel (size 832)
>  >  >>> /usr/libexec/gcc/i686-apple-darwin8/4.0.1/libtool: internal link
>  >  >>> edit
>  >  >>> command failed
>  >  >>> make: *** [libx264.58.dylib] Error 1
>  >  >>>
>  >  >>> I googled a bit and it seems like this is a GCC bug, but I'm not
>  >  >>> sure.
>  >  >>>
>  >  >>> İsmail, do you have a idea of how to fix this problem?
>  >  >>
>  >  >> Does the attached patch fixes this for you?
>  >  >
>  >  > yep, it does, but it's strange that such a fix is necessary. It's the
>  >  > compiler not doing its job...
>  >
>  >  You have to use -fno-common to avoid generating these. (or -Wl,-
>  >  single_module, which is supposedly slightly more efficient, though I
>  >  don't know how it works)
>
>  Good catch, ffmpeg already uses -Wl,-single_module so shall x264.
>  Updated patch attached. Now it should make everyone happy. Please
>  review & apply.

Ah! At last a clean solution for that problem.

The patch is all good as far as I can tell. Unless Loren objects, this
patch shall make it to the GIT repository with your name on it (if I
can figure out how put your name on it in a GIT-compatible way)

Guillaume
-- 
A soldier will fight long and hard for a bit of colored ribbon.
 -- Napoleon Bonaparte


More information about the x264-devel mailing list