How to build AOO on MacOSX 10.8
I'm trying to make AOO buildable on the latest MacOSX 10.8 - Mountain Lion. As what we did on MacOSX 10.7, we have to install Xcode 3.2 with SDK 10.4u. There are still some build breaks for AOO, which need to solve one by one.
Contents
To install Xcode 3.2 on MacOSX 10.8
Please refer to [1]. You need to change "10.7" to "10.9". The machine will reboot and the system will meet "kernel panics" after install Xcode 3.2. You need to enter the "Safe Mode" and delete some files.
Press "shift" during startup to enter the "Safe Mode". Go to the dir "/System/Library/Extentions/". Delete the following files, which belong to Xcode 3.2 on MacOSX 10.6
(1) AppleProfileFamily.kext (2) CHUDKernLib.kext (3) CHUDProf.kext (4) CHUDUtils.kext
Reboot the machine normally. Please refer to [2]
To install JVM
Go to dir "/Applications/Utilities/", launch "Java Preferences.app" to start to download JVM
To install command support package with Xcode 4.4
There is no commands like "make", "svn" in "/usr/bin" on MacOSX 10.8 with Xcode 3.2. You need to download Xcode 4.4, launch it, click on memu "Xcode / Preferences..." to popup a dialog, select "Downloads / Components", click to install "Command Line Tools"
To build AOO's source code
Open a terminal, run cmds as below
svn co https://svn.apache.org/repos/asf/incubator/ooo/trunk/ code cd code/main autoconf ./configure --with-dmake-url="http://dmake.apache-extras.org.codespot.com/files/dmake-4.12.tar.bz2" --with-epm-url="http://ftp.easysw.com/pub/epm/3.7/epm-3.7-source.tar.gz" --disable-build-mozilla --enable-category-b --enable-minimizer --enable-presenter-console --enable-wiki-publisher ./bootstrap source MacOSXX86Env.Set.sh cd instsetoo_native build --all -P4
To solve build break #1
Module : pyuno
The original error message
/Users/hchao/Apache/build/aoo.20120802/code/main/pyuno/source/module/pyuno_runtime.cxx:68: error: ‘PyVarObject_HEAD_INIT’ was not declared in this scope
Root cause : There is no "PyVarObject_HEAD_INIT" for Python 2.7 on MacOSX 10.8. The related revision is 1367858 "pyuno: Replace PyObject_HEAD_INIT with PyVarObject_HEAD_INIT and add some initial Python3 safeguards."
Solution : To revert the revision from 1367858 to 1366479 for module pyuno
cd pyuno rm -rf unxmaci.pro svn up -r 1366479 build deliver
To solve build break #2
Module : avmedia
The original error message
/Users/hchao/Apache/build/aoo.20120802/code/main/solenv/bin/checkdll.sh -L../unxmacxi.pro/lib -L/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib ../unxmacxi.pro/lib/libavmedia.dylib Checking DLL ../unxmacxi.pro/lib/libavmedia.dylib ...: ERROR: dlopen(../unxmacxi.pro/lib/libavmedia.dylib, 2): Symbol not found: ___CFConstantStringClassReference Referenced from: /Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsfx.dylib Expected in: /Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsfx.dylib
Root cause : can not link to "___CFConstStringClassReference"
Try Steps : To append "-framework CoreFoundation" to "SHL1STDLIBS" in file "avmedia/util/makefile.mk". But it does not effect.
/Users/hchao/Apache/build/aoo.20120802/code/main/solenv/bin/checkdll.sh -L../unxmacxi.pro/lib -L/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib ../unxmacxi.pro/lib/libavmedia.dylib Checking DLL ../unxmacxi.pro/lib/libavmedia.dylib ...: ERROR: dlopen(../unxmacxi.pro/lib/libavmedia.dylib, 2): Symbol not found: ___CFConstantStringClassReference Referenced from: /Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsfx.dylib Expected in: /Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsfx.dylib
WalkAround : To skip checkdll in module avmedia
cd avmedia/util /usr/bin/g++-4.0 -Wl,-multiply_defined,suppress -lobjc -Wl,-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk -install_name @__________________________________________________OOO/libavmedia.dylib -dynamiclib -single_module -L../unxmacxi.pro/lib -L/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib -L/usr/lib -o ../unxmacxi.pro/lib/libavmedia.dylib -lutl -ltl -luno_cppu -luno_cppuhelpergcc3 -luno_sal -lvcl -lcomphelpgcc3 -lsvt -lsvl -lsfx -lvos3gcc3 -framework CoreFoundation -lpthread -lstdc++ -lm -filelist ../unxmacxi.pro/misc/libavmedia.list -Wl,-dylib_file,@__________________________________________________OOO/libutl.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libutl.dylib -Wl,-dylib_file,@__________________________________________________OOO/libtl.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libtl.dylib -Wl,-dylib_file,@__________________________________________________URELIB/libuno_cppu.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_cppu.dylib -Wl,-dylib_file,@__________________________________________________URELIB/libuno_cppuhelpergcc3.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_cppuhelpergcc3.dylib -Wl,-dylib_file,@__________________________________________________URELIB/libuno_sal.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_sal.dylib -Wl,-dylib_file,@__________________________________________________OOO/libvcl.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libvcl.dylib -Wl,-dylib_file,@__________________________________________________OOO/libcomphelpgcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libcomphelpgcc3.dylib -Wl,-dylib_file,@__________________________________________________OOO/libsvt.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsvt.dylib -Wl,-dylib_file,@__________________________________________________OOO/libsvl.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsvl.dylib -Wl,-dylib_file,@__________________________________________________OOO/libsfx.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsfx.dylib -Wl,-dylib_file,@__________________________________________________OOO/libvos3gcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libvos3gcc3.dylib -Wl,-dylib_file,@loader_path/../ure-link/lib/libuno_salhelpergcc3.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_salhelpergcc3.dylib.3 -Wl,-dylib_file,@loader_path/libcomphelpgcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libcomphelpgcc3.dylib -Wl,-dylib_file,@loader_path/libucbhelper4gcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libucbhelper4gcc3.dylib -Wl,-dylib_file,@loader_path/../ure-link/lib/libuno_cppuhelpergcc3.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_cppuhelpergcc3.dylib.3 -Wl,-dylib_file,@loader_path/../ure-link/lib/libuno_cppu.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_cppu.dylib.3 -Wl,-dylib_file,@loader_path/libi18nisolang1gcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libi18nisolang1gcc3.dylib -Wl,-dylib_file,@loader_path/libtl.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libtl.dylib -Wl,-dylib_file,@loader_path/libvos3gcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libvos3gcc3.dylib -Wl,-dylib_file,@loader_path/../ure-link/lib/libuno_sal.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_sal.dylib.3 -Wl,-dylib_file,@loader_path/libbasegfx.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libbasegfx.dylib -Wl,-dylib_file,@loader_path/libuno_sal.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_sal.dylib.3 -Wl,-dylib_file,@loader_path/libuno_salhelpergcc3.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_salhelpergcc3.dylib.3 -Wl,-dylib_file,@loader_path/libuno_cppu.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_cppu.dylib.3 -Wl,-dylib_file,@loader_path/libutl.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libutl.dylib -Wl,-dylib_file,@loader_path/libsot.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsot.dylib -Wl,-dylib_file,@loader_path/libicuuc.dylib.40.1:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libicuuc.dylib.40.1 -Wl,-dylib_file,@loader_path/libicule.dylib.40.1:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libicule.dylib.40.1 -Wl,-dylib_file,@loader_path/libi18npaper.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libi18npaper.dylib -Wl,-dylib_file,@loader_path/libi18nutilgcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libi18nutilgcc3.dylib -Wl,-dylib_file,@loader_path/../ure-link/lib/libjvmaccessgcc3.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libjvmaccessgcc3.dylib.3 -Wl,-dylib_file,@loader_path/libAppleRemote.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libAppleRemote.dylib -Wl,-dylib_file,@loader_path/../ure-link/lib/libjvmfwk.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libjvmfwk.dylib.3 -Wl,-dylib_file,@loader_path/libsvl.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsvl.dylib -Wl,-dylib_file,@loader_path/libtk.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libtk.dylib -Wl,-dylib_file,@loader_path/libvcl.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libvcl.dylib -Wl,-dylib_file,@loader_path/libfwe.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libfwe.dylib -Wl,-dylib_file,@loader_path/libsax.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsax.dylib -Wl,-dylib_file,@loader_path/libsb.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsb.dylib -Wl,-dylib_file,@loader_path/libsvt.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsvt.dylib -Wl,-dylib_file,@__________________________________________________URELIB/libuno_salhelpergcc3.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_salhelpergcc3.dylib.3 -Wl,-dylib_file,@__________________________________________________OOO/libucbhelper4gcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libucbhelper4gcc3.dylib -Wl,-dylib_file,@__________________________________________________OOO/libi18nisolang1gcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libi18nisolang1gcc3.dylib -Wl,-dylib_file,@__________________________________________________OOO/libbasegfx.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libbasegfx.dylib -Wl,-dylib_file,@__________________________________________________OOO/libsot.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsot.dylib -Wl,-dylib_file,@__________________________________________________OOO/libicuuc.dylib.40.1:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libicuuc.dylib.40.1 -Wl,-dylib_file,@loader_path/libicudata.dylib.40.1:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libicudata.dylib.40.1 -Wl,-dylib_file,@__________________________________________________OOO/libicule.dylib.40.1:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libicule.dylib.40.1 -Wl,-dylib_file,@__________________________________________________OOO/libi18npaper.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libi18npaper.dylib -Wl,-dylib_file,@__________________________________________________OOO/libi18nutilgcc3.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libi18nutilgcc3.dylib -Wl,-dylib_file,@__________________________________________________URELIB/libjvmaccessgcc3.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libjvmaccessgcc3.dylib.3 -Wl,-dylib_file,@__________________________________________________OOO/libAppleRemote.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libAppleRemote.dylib -Wl,-dylib_file,@__________________________________________________URELIB/libjvmfwk.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libjvmfwk.dylib.3 -Wl,-dylib_file,@loader_path/libuno_cppuhelpergcc3.dylib.3:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libuno_cppuhelpergcc3.dylib.3 -Wl,-dylib_file,@__________________________________________________OOO/libtk.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libtk.dylib -Wl,-dylib_file,@__________________________________________________OOO/libfwe.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libfwe.dylib -Wl,-dylib_file,@loader_path/libfwi.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libfwi.dylib -Wl,-dylib_file,@__________________________________________________OOO/libsax.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsax.dylib -Wl,-dylib_file,@__________________________________________________OOO/libsb.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libsb.dylib -Wl,-dylib_file,@loader_path/libxcr.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libxcr.dylib -Wl,-dylib_file,@__________________________________________________OOO/libicudata.dylib.40.1:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libicudata.dylib.40.1 -Wl,-dylib_file,@__________________________________________________OOO/libfwi.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libfwi.dylib -Wl,-dylib_file,@__________________________________________________OOO/libxcr.dylib:/Users/hchao/Apache/build/aoo.20120802/code/main/solver/350/unxmacxi.pro/lib/libxcr.dylib cd .. build deliver
Solution : There is a similar issue on early MacOSX 10.6 [3]. So it may be a system defect in 10.8. Please update this part if you get the solution
Reference
[1] http://anatomicwax.tumblr.com/post/7906770311/installing-xcode-3-2-6-on-lion
[2] https://discussions.apple.com/thread/4145448?start=0&tstart=0