[vlc-devel] complicated process building vlc 1.0.0 rc1 under MacOSX 10.5.7, PPC

Jean-Paul Saman jpsaman at videolan.org
Sun May 17 19:58:00 CEST 2009


philipp wrote:
> It is not very simple to make a sucessful build - for me, no wonder not 
> many people have done it.

Me, and in fact it is quite simple just follow 
http://wiki.videolan.org/OSXCompile

Basic procedure which assumes XCode-3.1.2 is installed:
1) git clone git://git.videolan.org/vlc.git vlc.git
2) cd vlc.git/extras/contrib
3) ./bootstrap
4) make bin (or make src if you are adventurus ;))
5) cd ../../
6) export CC="/Developer/usr/bin/llvm-gcc-4.2"
    export OBJC="/Developer/usr/bin/llvm-gcc-4.2"
    export CXX="/Developer/usr/bin/llvm-g++-4.2"
7) ./configure <your pile of favorite switches>
8) make

> 
> Below, my procedure. I might be possible, that some of these problems 
> are my fault, but I tried to make it analog to what is documented in the 
> wiki.
> This does not happen when I checkout a vlc tree using git.
> only, when I use this tarball: 
> http://mirror.informatik.uni-mannheim.de/pub/mirrors/videolan.org/testing/vlc-1.0.0-rc1/vlc-1.0.0-rc1.tar.bz2 
> 
> Please correcte me, If I made something wrong - thank you.
> 
> 2 Things are important:
> the ffmpeg library and the x264 which are downladed from 
> ftp.videolan.org cannot be used to build vlc.
> ffmpeg: compiled with the wrong switch ( --mdynamic-no-pic ), this is 
> corrected when you make the src,
> but then, in the source libfaac is enabled an this results in binary 
> which you cannot distribute (?)
> 
> the x264 library suffers from the same problem as the ffmpeg. But I have 
> not found a way to build it using the llvm compiler. It only will link 
> to vlc if I manually change the compiler to gcc4
> 
> To make it possible building vlc without building the ffmpeg and x264 
> sources working binaries should be uploaded to the ftp server and 
> included in the contribs tarball.
> 
> 
> 
> 
> 
> Following a log what happens.
> 
> 
> ----------------------
> 
>  From the main directory:
> cd extras/contrib/
> ./bootstrap
> ./make
> 
> 
> 
> cd ../../
> bootstrap
> ./configure --enable-release
> 
> :
> export MACOSX_DEPLOYMENT_TARGET=10.5
> make  all-recursive
> Making all in po
> Making all in compat
> /bin/sh ../libtool --tag=CC   --mode=compile 
> /Developer/usr/bin/llvm-gcc-4.2 -std=gnu99 -isysroot 
> /Developer/SDKs/MacOSX10.5.sdk -arch ppc -mmacosx-version-min=10.5 
> -DHAVE_CONFIG_H -I. -I..   -I../include -I../include  
> -I/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/include 
> -DSYS_DARWIN  
> -I/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/include 
> -D_INTL_REDIRECT_MACROS -DMACOSX_DEPLOYMENT_TARGET=10.5 -Wall -Wextra 
> -Wsign-compare -Wundef -Wpointer-arith -Wbad-function-cast -Wcast-align 
> -Wwrite-strings -Wmissing-prototypes -Wvolatile-register-var 
> -Werror-implicit-function-declaration -MT strndup.lo -MD -MP -MF 
> .deps/strndup.Tpo -c -o strndup.lo strndup.c
> ../libtool: line 844: X--tag=CC: command not found
> ../libtool: line 877: libtool: ignoring unknown tag : command not found
> ../libtool: line 844: X--mode=compile: command not found
> ../libtool: line 1011: *** Warning: inferring the mode of operation is 
> deprecated.: command not found
> ../libtool: line 1012: *** Future versions of Libtool will require 
> --mode=MODE be specified.: command not found
> ../libtool: line 1155: X/Developer/usr/bin/llvm-gcc-4.2: No such file or 
> directory
> ../libtool: line 1155: X-std=gnu99: command not found
> ../libtool: line 1155: X-isysroot: command not found
> ../libtool: line 1155: X/Developer/SDKs/MacOSX10.5.sdk: No such file or 
> directory
> ../libtool: line 1155: X-arch: command not found
> ../libtool: line 1155: Xppc: command not found
> ../libtool: line 1155: X-mmacosx-version-min=10.5: command not found
> ../libtool: line 1155: X-DHAVE_CONFIG_H: command not found
> ../libtool: line 1155: X-I.: command not found
> ../libtool: line 1155: X-I..: command not found
> ../libtool: line 1155: X-I../include: No such file or directory
> ../libtool: line 1155: X-I../include: No such file or directory
> ../libtool: line 1155: 
> X-I/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/include: No 
> such file or directory
> ../libtool: line 1155: X-DSYS_DARWIN: command not found
> 
> -------------
> second try deleted everything, then, no bootstrap this time:
> ./configure --enable-release
> 
> 
> :
> libvlc configuration
> --------------------
> version               : 1.0.0-rc1
> system                : darwin
> architecture          : powerpc altivec
> build flavour         : release
> vlc aliases           : cvlc rvlc nvlc
> plugins/bindings      :
> 
> You can tune the compiler flags in vlc-config.
> To build vlc and its plugins, type `./compile' or `make'.
> 
> ------------------------------
> make ........
> 
> :
> libtool: link: /Developer/usr/bin/llvm-gcc-4.2 -std=gnu99 -isysroot 
> /Developer/SDKs/MacOSX10.5.sdk -arch ppc -mmacosx-version-min=10.5  -o 
> .libs/libavcodec_plugin.dylib -bundle  
> .libs/libavcodec_plugin_la-avcodec.o .libs/libavcodec_plugin_la-video.o 
> .libs/libavcodec_plugin_la-audio.o 
> .libs/libavcodec_plugin_la-deinterlace.o 
> .libs/libavcodec_plugin_la-fourcc.o .libs/libavcodec_plugin_la-chroma.o 
> .libs/libavcodec_plugin_la-encoder.o   
> .libs/libavcodec_plugin.lax/libcompat.a/strndup.o 
> .libs/libavcodec_plugin.lax/libcompat.a/strnlen.o   
> -L/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/lib -lpthread 
> -L///Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/extras/contrib/lib -lavcodec 
> -lz -lbz2 
> ///Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/extras/contrib/lib/libfaac.a 
> -lgsm 
> ///Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/extras/contrib/lib/libmp3lame.a 
> -lavutil -lm ../../../src/.libs/libvlccore.dylib -L/usr/lib  -isysroot 
> /Developer/SDKs/MacOSX10.5.sdk -arch ppc -mmacosx-version-min=10.5 
> -mtune=G4 -Wl,-read_only_relocs -Wl,suppress 
> -Wl,-headerpad_max_install_names
> ld: pointer in read-only segment not allowed in slidable image, used in 
> lJTI3_0 from 
> /Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/lib/libavcodec.a(audioconvert.o) 
> 
> collect2: ld returned 1 exit status
> make[6]: *** [libavcodec_plugin.la] Error 1
> 
> ------------
> cd extras/contrib/src
> make .ffmpeg
> 
> .
> .
> .
> .
> :
> (cd ffmpeg; CC="/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2" 
> CXX="/Developer/usr/llvm-gcc-4.2/bin/llvm-g++-4.2" LD="ld -arch ppc 
> -syslibroot /Developer/SDKs/MacOSX10.5.sdk" ./configure  
> --enable-libmp3lame --enable-libfaac --enable-libgsm 
> --cc=/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2 --arch=ppc 
> --enable-gpl --enable-postproc --disable-ffserver --disable-ffmpeg 
> --disable-ffplay --disable-devices --disable-protocols --disable-network 
> --prefix=/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/extras/contrib 
> --extra-cflags="-I/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/extras/contrib/include 
> -arch ppc -mtune=G4  -DMACOSX_DEPLOYMENT_TARGET=10.5 -isysroot 
> /Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5 -DNDEBUG 
> -isystem /Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/extras/contrib/include  
> -DRUNTIME_CPUDETECT" 
> --extra-ldflags="-L/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/extras/contrib/lib 
> -arch ppc -isysroot /Developer/SDKs/MacOSX10.5.sdk 
> -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk"  --enable-libmp3lame 
> --enable-libfaac --enable-libgsm 
> --cc=/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2 --arch=ppc 
> --enable-gpl --enable-postproc --disable-ffserver --disable-ffmpeg 
> --disable-ffplay --disable-devices --disable-protocols --disable-network 
> --disable-shared --enable-static && make && make install-libs 
> install-headers)
> libfaac is nonfree and --enable-nonfree is not specified.
> 
> If you think configure made a mistake, make sure you are using the latest
> version from SVN.  If the latest version fails, report the problem to the
> ffmpeg-user at mplayerhq.hu mailing list or IRC #ffmpeg on irc.freenode.net.
> Include the log file "config.err" produced by configure as this will help
> solving the problem.
> make: *** [.ffmpeg] Error 1
> 
> ( removed --enable-libaac )
> 
> .
> .
> .
> ffmpeg ok.
> cd ( main )
> make
> 
> :
> /bin/sh ../../libtool --tag=CC   --mode=link 
> /Developer/usr/bin/llvm-gcc-4.2 -std=gnu99 -isysroot 
> /Developer/SDKs/MacOSX10.5.sdk -arch ppc -mmacosx-version-min=10.5 
> `top_srcdir="../.." top_builddir="../.." ../../vlc-config --cflags 
> plugin libx264_plugin.la` 
> -I/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/include 
> -D_INTL_REDIRECT_MACROS -DMACOSX_DEPLOYMENT_TARGET=10.5 -Wall -Wextra 
> -Wsign-compare -Wundef -Wpointer-arith -Wbad-function-cast -Wcast-align 
> -Wwrite-strings -Wmissing-prototypes -Wvolatile-register-var 
> -Werror-implicit-function-declaration -rpath 
> '/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/vlc_install_dir/lib/vlc/codec' 
> -avoid-version -module -export-symbol-regex ^vlc_entry -shrext .dylib 
> -no-undefined `top_srcdir="../.." top_builddir="../.." ../../vlc-config 
> --ldflags plugin libx264_plugin.la` 
> -L/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/lib 
> -Wl,-headerpad_max_install_names -o libx264_plugin.la  
> libx264_plugin_la-x264.lo  `top_srcdir="../.." top_builddir="../.." 
> ../../vlc-config -libs plugin libx264_plugin.la` ../../src/libvlccore.la 
> ../../compat/libcompat.la
> libtool: link: warning: 
> `/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/lib/libgcrypt.la' 
> seems to be moved
> libtool: link: warning: 
> `/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/lib/libintl.la' 
> seems to be moved
> libtool: link: (cd .libs/libx264_plugin.lax/libcompat.a && ar x 
> "/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/modules/codec/../../compat/.libs/libcompat.a") 
> 
> libtool: link: /Developer/usr/bin/llvm-gcc-4.2 -std=gnu99 -isysroot 
> /Developer/SDKs/MacOSX10.5.sdk -arch ppc -mmacosx-version-min=10.5  -o 
> .libs/libx264_plugin.dylib -bundle  .libs/libx264_plugin_la-x264.o   
> .libs/libx264_plugin.lax/libcompat.a/strndup.o 
> .libs/libx264_plugin.lax/libcompat.a/strnlen.o   
> -L///Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/extras/contrib/lib -lx264 
> -L/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/./extras/contrib/lib -lpthread 
> -lmx -lm ../../src/.libs/libvlccore.dylib -L/usr/lib  -isysroot 
> /Developer/SDKs/MacOSX10.5.sdk -arch ppc -mmacosx-version-min=10.5 
> -mtune=G4 -Wl,-read_only_relocs -Wl,suppress 
> -Wl,-headerpad_max_install_names
> ld: pointer in read-only segment not allowed in slidable image, used in 
> lJTI57_0 from /tmp/lto.o
> collect2: ld returned 1 exit status
> make[5]: *** [libx264_plugin.la] Error 1
> make[4]: *** [all-recursive] Error 1
> make[3]: *** [all] Error 2
> make[2]: *** [all-recursive] Error 1
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2
> 
> -----
> make .x264
> 
> cd x264
> config.mak:
> CC=/usr/bin/gcc instead of CC=/Developer/usr/llvm-gcc-4.2/bin/llvm-gcc-4.2
> make clean
> make
> make install
> 
> cd ( main )
> make
> .
> .
> .
> 
> :
>  /usr/bin/install -c -m 644 '../include/vlc_xml.h' 
> '/Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/vlc_install_dir/include/vlc/plugins/vlc_xml.h' 
> 
> Making install in test
> make[6]: Nothing to be done for `install-exec-am'.
> make[6]: Nothing to be done for `install-data-am'.
> rm -Rf ./tmp
> mkdir -p "./tmp/extras/package/macosx"
> rm -Rf ./VLC.app
> for i in vlc.xcodeproj Resources README.MacOSX.rtf; do \
>       cp -R ./extras/package/macosx/$i ./tmp/extras/package/macosx/; \
>     done
> REVISION=`git describe --always` && \
>     cat ./extras/package/macosx/Info.plist | \
>     sed "s/#REVISION#/$REVISION/g" > ./tmp/extras/package/macosx/Info.plist
> fatal: Not a git repository (or any of the parent directories): .git
> make[2]: *** [VLC.app] Error 128
> make[1]: *** [all-recursive] Error 1
> make: *** [all] Error 2
> 
> Makefile:
> deleted:
> all lines with:
> "git describe"
> 
> make
> ok.
> I have a running app, but no package.
> ------
> 
> make VLC-release.app
> 
> :
> pbxcp: VLM.nib: No such file or directory
> CpResource 
> build/Default/VLC.bundle/Contents/Resources/English.lproj/CoreDialogs.nib 
> Resources/English.lproj/CoreDialogs.nib
> CpResource 
> build/Default/VLC.bundle/Contents/Resources/English.lproj/ErrorPanel.nib 
> Resources/English.lproj/ErrorPanel.nib
> CpResource build/Default/VLC.bundle/Contents/Resources/add_schedule.png 
> Resources/add_schedule.png
> pbxcp: add_schedule.png: No such file or directory
> CpResource build/Default/VLC.bundle/Contents/Resources/add_vod.png 
> Resources/add_vod.png
> pbxcp: add_vod.png: No such file or directory
> CpResource build/Default/VLC.bundle/Contents/Resources/add_broadcast.png 
> Resources/add_broadcast.png
> pbxcp: add_broadcast.png: No such file or directory
> ** BUILD FAILED **
> 
> The following build commands failed:
> vlc:
>     CpResource 
> build/Default/VLC.bundle/Contents/Resources/English.lproj/VLM.nib 
> Resources/English.lproj/VLM.nib
>     CpResource 
> build/Default/VLC.bundle/Contents/Resources/add_schedule.png 
> Resources/add_schedule.png
>     CpResource build/Default/VLC.bundle/Contents/Resources/add_vod.png 
> Resources/add_vod.png
>     CpResource 
> build/Default/VLC.bundle/Contents/Resources/add_broadcast.png 
> Resources/add_broadcast.png
> (4 failures)
> 
> /usr/bin/install -c -d ./VLC-release.app/Contents/MacOS
> PRODUCT="VLC-release.app" ACTION="release-makefile" src_dir=. 
> build_dir=. sh ./projects/macosx/framework/Pre-Compile.sh
> sh: ./projects/macosx/framework/Pre-Compile.sh: No such file or directory
> make: *** [VLC-release.app] Error 127
> 
> Manually copied from "git" tree:
> cp -pR 
> /Volumes/MacintoshHD/vlc/vlc/extras/package/macosx/Resources/English.lproj/VLM.nib 
> extras/package/macosx/Resources/English.lproj/
> cp 
> /Volumes/MacintoshHD/vlc/vlc/extras/package/macosx/Resources/add_schedule.png 
> extras/package/macosx/Resources/
> cp 
> /Volumes/MacintoshHD/vlc/vlc/extras/package/macosx/Resources/add_vod.png 
> extras/package/macosx/Resources/
> cp 
> /Volumes/MacintoshHD/vlc/vlc/extras/package/macosx/Resources/add_broadcast.png 
> extras/package/macosx/Resources/
> 
> Then, again:
> make VLC-release.app
> .
> .
> .
> Touch 
> /Volumes/MacintoshHD/vlc/vlc-1.0.0-rc1/tmp/extras/package/macosx/build/Default/VLC.bundle 
> 
> ** BUILD SUCCEEDED **
> /usr/bin/install -c -d ./VLC-release.app/Contents/MacOS
> PRODUCT="VLC-release.app" ACTION="release-makefile" src_dir=. 
> build_dir=. sh ./projects/macosx/framework/Pre-Compile.sh
> sh: ./projects/macosx/framework/Pre-Compile.sh: No such file or directory
> make: *** [VLC-release.app] Error 127
> 
> copied from git-vlc the folder projects/macosx to current tree.
> 
> again,
> make VLC-release.app
> .
> .
> .
> 
> final sucess - a working application !
> 
> make package-macosx ok.
> 
> 
> 
> 
> 
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> http://mailman.videolan.org/listinfo/vlc-devel
> 




More information about the vlc-devel mailing list