-rw-r--r-- | development/macosx/README_MACOSX | 81 | ||||
-rw-r--r-- | development/macosx/config_macosx | 1 |
2 files changed, 60 insertions, 22 deletions
diff --git a/development/macosx/README_MACOSX b/development/macosx/README_MACOSX index e58aa8a..864f486 100644 --- a/development/macosx/README_MACOSX +++ b/development/macosx/README_MACOSX @@ -1,86 +1,123 @@ Information about porting Opie to MacOS-X (eilers) ================================================== Credits: -------- Special thanks to Andreas Junghans (webmaster@lucid-cake.net) for its patches for qt-X11 (2.3.2), QT/E (2.3.5) and qtopia (1.6.1). Without them, I wouldn't be able to provide the port for OPIE to MacOS-X that fast.. Status: ------- The basic system works quite well. But a lot of applications and plugins, which are platform specific, need some work to be compileable. What is ready: libqpe libopie1 +libopie2/opiedb pim-applications (addressbook, todolist, datebook, today) A lot of applications and plugins which are not platform specific. What will follow soon: -libopie2 +libopie2 -Remember: A lot of configuration-settings are not tested (as for instance -the quicklauncher) and might fail to compile. -If you want to avoid misconfigurations, you may want to start with -the config-file in this directory. Just copy "config_macosx" to $OPIEDIR/.config -to get a working configuration to start with. - -(The missing apps/plugins will be ported on demand.) How to compile Opie for MacOS-X: ------------------------------- Before compiling for MacOS-X, you need the following: -1. X11-Server (Provided by Apple) -2. QT-2.3.2 for X11 -3. QT/E-2.3.7 -4. Patches for QT-2.3.2 for MacOSX -5. Patches for QT/E-2.3.7 for MacOSX - -Please follow the instructions by http://www.lucid-cake.net/osx_qpe/index_de.html -how to create a buildsystem for your Mac. -What is different to the previous desciption: -You don't need Qtopia ! -It is recommended to use QT/E in version 2.3.7 instead of 2.3.5 as described. +1. X11-Server+X11SDK (Provided by Apple) +2. QT-2.3.2 for X11 (Provided by Trolltech) +3. QT/E-2.3.7 (Provided by Trolltech) +4. Patches for QT-2.3.2 for MacOSX (take the one in this directory !) +5. Patches for QT/E-2.3.7 for MacOSX (take the one, provided in $OPIEDIR/qt) + The Patch for QT/E for Opie, including all other opie-patches is available in the qt-directory ($OPIEDIR/qt) and is called "qte237-all-macosx.patch". +The Patch for QT-2.3.2 is provided in this directory.. If your buildsystem is working correctly, you should be able to build -opie. You have to enter "make menuconfig" and set -"Build Parameters"->"Target Machine"->"Mac OS X (DARWIN)" -activate the platform specific changes. +opie. + +HOWTO COMPILE: +------------- + +Compile QT-2.3.2: + +Got to into the basic directory of qt-2.3.2 and enter +export QTDIR=`pwd` +export DYLD_LIBRARY_PATH=$QTDIR/lib +./configure -no-xft -platform darwin-g++ +make +After compiling successful (I hope) you need qvfb: +cd tools/qvfb +make + +Compile QT/E-2.3.7: + +Got to into the basic directory of qt-2.3.2 and enter +export QTDIR=`pwd` +export QPEDIR=$QTDIR +export DYLD_LIBRARY_PATH=$QTDIR/lib +./configure -platform darwin-generic-g++ -qconfig qpe -qvfb -depths 4,8,16,32 +make + +Compile OPIE: +Set your environment +(You may use the script "set_vars.sh" to set your variables successfully ! +BUT: You have to customize this script for YOUR needs !!) +Go into the basic directory of Opie +make menuconfig" +set "Build Parameters"->"Target Machine"->"Mac OS X (DARWIN)" to activate the platform specific changes. +save and exit the menuconfig app +make You will see that a lot of applications and plugins/applets will not compile successfully, due to the fact that they are not ported to this platform. You may disable them to be able to compile the rest. +Remember: A lot of configuration-settings are not tested and might fail to compile. +If you want to avoid misconfigurations, you may want to start with +the config-file in this directory. Just copy "config_macosx" to $OPIEDIR/.config +to get a working configuration to start with. + +(The missing apps/plugins will be ported on demand.) + + +SPECIAL INFORMATION FOR USERS OF PANTHER +---------------------------------------- +I had a lot of problems compiling qt-2.3.2 and QT/E-2.3.7 on Panther. The +new release of the X-Server causes a lot of trouble.. + +To compile QT-2.3.2 successfully, you have to disable support of freetype fonts and you have +to use the patch in this directory, otherwise your wont't be able to compile ! +Use the param "-no-xft" for the configure script to disable this function ! Information for Developers: --------------------------- 1. Platform specific code should be surrounded by #ifdef Q_OS_MACX MACOS-X CODE #else OTHER-CODE #endif 2. The Plugin-Handling by MacOS-X is different than it is by Linux. On linux-systems, shared libraries are not different to dynamic loaded libraries (aka plugins). They just are different whether they are loaded automatically at startup or manually by any application. On MacOS-X, the plugins are loaded by a special mechanism and must be in a special binary format. Therefore you have to add the term "plugin" to the CONFIG-clause, as for instance: TEMPLATE=lib CONFIG += qt plugin release If you don't add "plugin" you will get a shared library which is not loadable (Error-Code: NSObjectFileImageInappropriateFile (2))! diff --git a/development/macosx/config_macosx b/development/macosx/config_macosx index eb0792f..656a468 100644 --- a/development/macosx/config_macosx +++ b/development/macosx/config_macosx @@ -6,48 +6,49 @@ # Build Parameters # # CONFIG_TARGET_X86 is not set CONFIG_TARGET_MACOSX=y # CONFIG_TARGET_SHARP is not set # CONFIG_TARGET_IPAQ is not set # CONFIG_TARGET_RAMSES is not set # CONFIG_TARGET_SIMPAD is not set # CONFIG_TARGET_YOPY is not set # CONFIG_OPTIMIZE is not set CONFIG_DEBUG=y CONFIG_QUICK_LAUNCH=y # CONFIG_OPIE_NO_OVERRIDE_QT is not set CONFIG_SPECFILE="qws/macx-generic-g++" CONFIG_EXPERIMENTAL=y # # Base # CONFIG_LIBQPE=y # CONFIG_X11 is not set CONFIG_LIBOPIE=y # CONFIG_OPIE-LOGIN is not set # CONFIG_OPIEALARM is not set +CONFIG_QUICKLAUNCHER=y CONFIG_LAUNCHER=y CONFIG_PRELOAD=y CONFIG_LAUNCHER_CORE=y CONFIG_QWS=y # # # # # Applets # CONFIG_BATTERYAPPLET=y # CONFIG_CARDMON is not set CONFIG_CLIPBOARDAPPLET=y CONFIG_CLOCKAPPLET=y CONFIG_HOMEAPPLET=y # CONFIG_IRDAAPPLET is not set # CONFIG_LOGOUTAPPLET is not set # CONFIG_OBEXAPPLET is not set # CONFIG_OBEX is not set # CONFIG_RESTARTAPPLET is not set # CONFIG_ROTATEAPPLET is not set # CONFIG_SCREENSHOTAPPLET is not set |