[vlc-devel] Problems (and some workarounds) building VLC on Mac OS X 10.4.11
Dave Still
dave at stilldesigning.com
Fri Jan 25 01:20:35 CET 2008
Given that the nightlies for OS X are not working on Tiger at the
moment, I decided to try building the latest from svn on my MacBook
Pro with XCode 2.5 and I ran into a few snags. Here are the issues
that I ran into along with the workarounds that I came up with:
latest ffmpeg does not bulid - I got around this by get the svn
source from 2007-12-21. A more recent version may work, and with a
little more time on my hands I might be able to find the patch that
broke it, but it errored out while trying to build swscale. This
seems to be a recurring issue with ffmpeg builds as the contribs
script just gets the latest version from the svn repository. Perhaps
a more stable solution would be to have the script pull a known
working revision of ffmpeg and update that revision periodically?
libcaca does not have installation permissions - the libcaca library
tries to install files for ruby in a global are which, of course, it
does not have permissions for. I worked around this by disabling
ruby support in libcaca.
cddax support is broken - I don't know specifically what happened,
but the build halted when it got to the cddax module. The workaround
was to remove cddax support from the Mac OS X defaults. Error
messages from build:
gcc -std=gnu99 -mmacosx-version-min=10.4 -DHAVE_CONFIG_H -I. -I. -
I../../.. -I/Users/admin/Source/vlc/vlc-trunk/./extras/contrib/
include -DSYS_DARWIN -I../../../include -I../../../include -I/usr/
local/include -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -
D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -DLOCALEDIR=\"/usr/
local/share/locale\" -DDATA_PATH=\"/usr/local/share/vlc\" -
DPLUGIN_PATH=\"/usr/local/lib/vlc\" -D__LIBVLC__ -D__PLUGIN__ -
DMODULE_NAME=cddax -DMODULE_NAME_IS_cddax -O2 -ffast-math -funroll-
loops -march=pentium-m -mtune=prescott -fomit-frame-pointer -
fvisibility=hidden -I/Users/admin/Source/vlc/vlc-trunk/extras/contrib/
include -I/Users/admin/Source/vlc/vlc-trunk/extras/contrib/include -I/
Users/admin/Source/vlc/vlc-trunk/./extras/contrib/include -
D_INTL_REDIRECT_MACROS -DMACOSX_DEPLOYMENT_TARGET=10.4 -Wall -Wextra -
Wno-unused-parameter -Wsign-compare -Wundef -Wpointer-arith -Wbad-
function-cast -Wcast-align -Wwrite-strings -Wmissing-prototypes -MT
libcddax_plugin_la-access.lo -MD -MP -MF .deps/libcddax_plugin_la-
access.Tpo -c access.c -fno-common -DPIC -o .libs/libcddax_plugin_la-
access.o
In file included from ../../../include/vlc/vlc.h:155,
from callback.h:24,
from access.c:29:
../../../include/vlc_common.h:34:2: error: #error You probably forgot
to include config.h!!
In file included from ../../../include/vlc/vlc.h:155,
from callback.h:24,
from access.c:29:
../../../include/vlc_common.h:94: error: conflicting types for
'uintptr_t'
/usr/lib/gcc/i686-apple-darwin8/4.0.1/include/stdint.h:83: error:
previous declaration of 'uintptr_t' was here
../../../include/vlc_common.h:95: error: conflicting types for
'intptr_t'
/usr/lib/gcc/i686-apple-darwin8/4.0.1/include/stdint.h:78: error:
previous declaration of 'intptr_t' was here
../../../include/vlc_common.h:113:23: error: malloc.h: No such file
or directory
In file included from ../../../include/vlc_common.h:471,
from ../../../include/vlc/vlc.h:155,
from callback.h:24,
from access.c:29:
../../../include/vlc_modules_macros.h:76:7: warning:
"HAVE_ATTRIBUTE_VISIBILITY" is not defined
...[snipped]
etc. Workaround was to disable cddax support from the default
AppleRemote support appears to break the build. Here's the output
from the build process:
Making all in macosx
if /bin/sh ../../../libtool --tag=CC --mode=compile gcc -mmacosx-
version-min=10.4 -DHAVE_CONFIG_H -I. -I. -I../../.. -I/Users/admin/
Source/vlc/vlc-trunk/./extras/contrib/include -DSYS_DARWIN -I../../../
include -I../../../include `top_builddir="../../.." ../../../vlc-
config --objcflags plugin macosx` -I/Users/admin/Source/vlc/vlc-
trunk/./extras/contrib/include -D_INTL_REDIRECT_MACROS -std=gnu99 -
DMACOSX_DEPLOYMENT_TARGET=10.4 -MT libmacosx_plugin_la-AppleRemote.lo
-MD -MP -MF ".deps/libmacosx_plugin_la-AppleRemote.Tpo" -c -o
libmacosx_plugin_la-AppleRemote.lo `test -f 'AppleRemote.m' || echo
'./'`AppleRemote.m; \
then mv -f ".deps/libmacosx_plugin_la-AppleRemote.Tpo" ".deps/
libmacosx_plugin_la-AppleRemote.Plo"; else rm -f ".deps/
libmacosx_plugin_la-AppleRemote.Tpo"; exit 1; fi
mkdir .libs
gcc -mmacosx-version-min=10.4 -DHAVE_CONFIG_H -I. -I. -I../../.. -I/
Users/admin/Source/vlc/vlc-trunk/./extras/contrib/include -
DSYS_DARWIN -I../../../include -I../../../include -I/usr/local/
include -D_FILE_OFFSET_BITS=64 -D__USE_UNIX98 -D_LARGEFILE64_SOURCE -
D_REENTRANT -D_THREAD_SAFE -DLOCALEDIR=\"/usr/local/share/locale\" -
DDATA_PATH=\"/usr/local/share/vlc\" -DPLUGIN_PATH=\"/usr/local/lib/vlc
\" -D__LIBVLC__ -D__PLUGIN__ -DMODULE_NAME=macosx -
DMODULE_NAME_IS_macosx -O2 -ffast-math -funroll-loops -march=pentium-
m -mtune=prescott -fomit-frame-pointer -fobjc-exceptions -I/Users/
admin/Source/vlc/vlc-trunk/./extras/contrib/include -
D_INTL_REDIRECT_MACROS -std=gnu99 -DMACOSX_DEPLOYMENT_TARGET=10.4 -MT
libmacosx_plugin_la-AppleRemote.lo -MD -MP -MF .deps/
libmacosx_plugin_la-AppleRemote.Tpo -c AppleRemote.m -fno-common -
DPIC -o .libs/libmacosx_plugin_la-AppleRemote.o
In file included from ../../../include/vlc/vlc.h:155,
from intf.h:27,
from AppleRemote.m:57:
../../../include/vlc_common.h:34:2: error: #error You probably forgot
to include config.h!!
In file included from ../../../include/vlc/vlc.h:155,
from intf.h:27,
from AppleRemote.m:57:
../../../include/vlc_common.h:94: error: conflicting types for
'uintptr_t'
/usr/include/i386/types.h:103: error: previous declaration of
'uintptr_t' was here
../../../include/vlc_common.h:95: error: conflicting types for
'intptr_t'
/usr/include/i386/types.h:99: error: previous declaration of
'intptr_t' was here
../../../include/vlc_common.h:113:23: error: malloc.h: No such file
or directory
In file included from ../../../include/vlc_common.h:525,
from ../../../include/vlc/vlc.h:155,
from intf.h:27,
from AppleRemote.m:57:
---[snipped]
And that's where my efforts end. I couldn't see immediately how one
could disable Apple Remote support, so I haven't gotten any further.
Any assistance in getting vlc to build would be greatly appreciated.
The ultimate goal of this is to have a latest and greatest 0.9.0-svn
build to test FLV transcoding and streaming for my TyStreamer
project. I'm having some issues with the latest Tiger-compatible
build, and I wanted to test against latest before trying to report bugs.
Thanks,
- Dave
--
David E. Still
Senior Developer
Still Designing
http://www.stilldesigning.com
More information about the vlc-devel
mailing list