-rw-r--r-- | development/macosx/README_MACOSX | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/development/macosx/README_MACOSX b/development/macosx/README_MACOSX index a468700..5069a2e 100644 --- a/development/macosx/README_MACOSX +++ b/development/macosx/README_MACOSX | |||
@@ -1,117 +1,121 @@ | |||
1 | Information about porting Opie to MacOS-X (eilers) | 1 | Information about porting Opie to MacOS-X (eilers) |
2 | ================================================== | 2 | ================================================== |
3 | 3 | ||
4 | Credits: | 4 | Credits: |
5 | -------- | 5 | -------- |
6 | 6 | ||
7 | Special thanks to Andreas Junghans (webmaster@lucid-cake.net) for its patches for qt-X11 (2.3.2), | 7 | Special thanks to Andreas Junghans (webmaster@lucid-cake.net) for its patches for qt-X11 (2.3.2), |
8 | QT/E (2.3.5) and qtopia (1.6.1). | 8 | QT/E (2.3.5) and qtopia (1.6.1). |
9 | Without them, I wouldn't be able to provide the port for OPIE to MacOS-X that fast.. | 9 | Without them, I wouldn't be able to provide the port for OPIE to MacOS-X that fast.. |
10 | Thanks to Juergen Graf to debug this very generic README ! | ||
10 | 11 | ||
11 | Status: | 12 | Status: |
12 | ------- | 13 | ------- |
13 | The basic system works quite well. But a lot of applications and plugins, | 14 | The basic system works quite well. But a lot of applications and plugins, |
14 | which are platform specific, need some work to be compileable. | 15 | which are platform specific, need some work to be compileable. |
15 | 16 | ||
16 | What is ready: | 17 | What is ready: |
17 | 18 | ||
18 | libqpe | 19 | libqpe |
19 | libopie1 | 20 | libopie1 |
20 | libopie2/opiedb | 21 | libopie2/opiedb |
21 | pim-applications (addressbook, todolist, datebook, today) | 22 | pim-applications (addressbook, todolist, datebook, today) |
22 | A lot of applications and plugins which are not platform specific. | 23 | A lot of applications and plugins which are not platform specific. |
23 | 24 | ||
24 | What will follow soon: | 25 | What will follow soon: |
25 | 26 | ||
26 | libopie2 | 27 | libopie2 |
27 | 28 | ||
28 | 29 | ||
29 | How to compile Opie for MacOS-X: | 30 | How to compile Opie for MacOS-X: |
30 | ------------------------------- | 31 | ------------------------------- |
31 | 32 | ||
32 | Before compiling for MacOS-X, you need the following: | 33 | Before compiling for MacOS-X, you need the following: |
33 | 34 | ||
34 | 1. X11-Server+X11SDK (Provided by Apple) | 35 | 1. X11-Server+X11SDK (Provided by Apple) |
35 | 2. QT-2.3.2 for X11 (Provided by Trolltech) | 36 | 2. QT-2.3.2 for X11 (Provided by Trolltech) |
36 | 3. QT/E-2.3.7 (Provided by Trolltech) | 37 | 3. QT/E-2.3.7 (Provided by Trolltech) |
37 | 4. Patches for QT-2.3.2 for MacOSX (take the one in this directory !) | 38 | 4. Patches for QT-2.3.2 for MacOSX (take the one in this directory !) |
38 | 5. Patches for QT/E-2.3.7 for MacOSX (take the one, provided in $OPIEDIR/qt) | 39 | 5. Patches for QT/E-2.3.7 for MacOSX (take the one, provided in $OPIEDIR/qt) |
39 | 40 | ||
40 | The Patch for QT-2.3.2 is provided in this directory and is called "qt232-X11.patch". | 41 | The Patch for QT-2.3.2 is provided in this directory and is called "qt232-X11.patch". |
41 | 42 | ||
42 | The Patch for QT/E for Opie, including all other opie-patches is available in the | 43 | The Patch for QT/E for Opie, including all other opie-patches is available in the |
43 | qt-directory ($OPIEDIR/qt) and is called "qte237-all-macosx.patch". | 44 | qt-directory ($OPIEDIR/qt) and is called "qte237-all-macosx.patch". |
44 | 45 | ||
45 | Please read further, how to compile the stuff. | 46 | Please read further, how to compile the stuff. |
46 | 47 | ||
47 | HOWTO COMPILE: | 48 | HOWTO COMPILE: |
48 | ------------- | 49 | ------------- |
49 | 50 | ||
50 | Compile QT-2.3.2: | 51 | Compile QT-2.3.2: |
51 | 52 | ||
52 | Go to into the basic directory of qt-2.3.2 and enter | 53 | Go to into the basic directory of qt-2.3.2 and enter |
53 | export QTDIR=`pwd` | 54 | export QTDIR=`pwd` |
54 | export DYLD_LIBRARY_PATH=$QTDIR/lib | 55 | export DYLD_LIBRARY_PATH=$QTDIR/lib |
55 | ./configure -no-xft -platform darwin-g++ | 56 | ./configure -no-xft -platform darwin-g++ |
56 | make | 57 | make |
57 | After compiling successful (I hope) you need qvfb: | 58 | After compiling successful (I hope) you need qvfb: |
58 | cd tools/qvfb | 59 | cd tools/qvfb |
59 | make | 60 | make |
60 | 61 | ||
61 | Compile QT/E-2.3.7: | 62 | Compile QT/E-2.3.7: |
62 | 63 | ||
63 | Got to into the basic directory of qt-2.3.2 and enter | 64 | Got to into the basic directory of qt-2.3.2 and enter |
64 | export QTDIR=`pwd` | 65 | export QTDIR=`pwd` |
65 | export QPEDIR=$QTDIR | 66 | export QPEDIR=$QTDIR |
66 | export DYLD_LIBRARY_PATH=$QTDIR/lib | 67 | export DYLD_LIBRARY_PATH=$QTDIR/lib |
67 | ./configure -platform darwin-generic-g++ -qconfig qpe -qvfb -depths 4,8,16,32 | 68 | ./configure -platform darwin-generic-g++ -qconfig qpe -qvfb -depths 4,8,16,32 |
68 | make | 69 | make |
69 | 70 | ||
71 | Now create a link for the uic of qt-2.3.2 into the bin-directory of qt/e 2.3.7 ! | ||
72 | Otherwise OPIE will fail to compile ! | ||
73 | |||
70 | Compile OPIE: | 74 | Compile OPIE: |
71 | Set your environment | 75 | Set your environment |
72 | (You may use the script "set_vars.sh" to set your variables successfully ! | 76 | (You may use the script "set_vars.sh" to set your variables successfully ! |
73 | BUT: You have to customize this script for YOUR needs !!) | 77 | BUT: You have to customize this script for YOUR needs !!) |
74 | Go into the basic directory of Opie | 78 | Go into the basic directory of Opie |
75 | make menuconfig" | 79 | make menuconfig" |
76 | set "Build Parameters"->"Target Machine"->"Mac OS X (DARWIN)" to activate the platform specific changes. | 80 | set "Build Parameters"->"Target Machine"->"Mac OS X (DARWIN)" to activate the platform specific changes. |
77 | save and exit the menuconfig app | 81 | save and exit the menuconfig app |
78 | make | 82 | make |
79 | 83 | ||
80 | You will see that a lot of applications and plugins/applets will not compile | 84 | You will see that a lot of applications and plugins/applets will not compile |
81 | successfully, due to the fact that they are not ported to this platform. | 85 | successfully, due to the fact that they are not ported to this platform. |
82 | You may disable them to be able to compile the rest. | 86 | You may disable them to be able to compile the rest. |
83 | 87 | ||
84 | Remember: A lot of configuration-settings are not tested and might fail to compile. | 88 | Remember: A lot of configuration-settings are not tested and might fail to compile. |
85 | If you want to avoid misconfigurations, you may want to start with | 89 | If you want to avoid misconfigurations, you may want to start with |
86 | the config-file in this directory. Just copy "config_macosx" to $OPIEDIR/.config | 90 | the config-file in this directory. Just copy "config_macosx" to $OPIEDIR/.config |
87 | to get a working configuration to start with. | 91 | to get a working configuration to start with. |
88 | 92 | ||
89 | (The missing apps/plugins will be ported on demand.) | 93 | (The missing apps/plugins will be ported on demand.) |
90 | 94 | ||
91 | 95 | ||
92 | SPECIAL INFORMATION FOR USERS OF PANTHER | 96 | SPECIAL INFORMATION FOR USERS OF PANTHER |
93 | ---------------------------------------- | 97 | ---------------------------------------- |
94 | I had a lot of problems compiling qt-2.3.2 and QT/E-2.3.7 on Panther. The | 98 | I had a lot of problems compiling qt-2.3.2 and QT/E-2.3.7 on Panther. The |
95 | new release of the X-Server causes a lot of trouble.. | 99 | new release of the X-Server causes a lot of trouble.. |
96 | 100 | ||
97 | To compile QT-2.3.2 successfully, you have to disable support of freetype fonts and you have | 101 | To compile QT-2.3.2 successfully, you have to disable support of freetype fonts and you have |
98 | to use the patch in this directory, otherwise your wont't be able to compile ! | 102 | to use the patch in this directory, otherwise your wont't be able to compile ! |
99 | Use the param "-no-xft" for the configure script to disable this function ! | 103 | Use the param "-no-xft" for the configure script to disable this function ! |
100 | 104 | ||
101 | Information for Developers: | 105 | Information for Developers: |
102 | --------------------------- | 106 | --------------------------- |
103 | 107 | ||
104 | 1. Platform specific code should be surrounded by | 108 | 1. Platform specific code should be surrounded by |
105 | #ifdef Q_OS_MACX | 109 | #ifdef Q_OS_MACX |
106 | MACOS-X CODE | 110 | MACOS-X CODE |
107 | #else | 111 | #else |
108 | OTHER-CODE | 112 | OTHER-CODE |
109 | #endif | 113 | #endif |
110 | 114 | ||
111 | 2. The Plugin-Handling by MacOS-X is different than it is by Linux. | 115 | 2. The Plugin-Handling by MacOS-X is different than it is by Linux. |
112 | On linux-systems, shared libraries are not different to dynamic loaded libraries | 116 | On linux-systems, shared libraries are not different to dynamic loaded libraries |
113 | (aka plugins). They just are different whether they are loaded automatically | 117 | (aka plugins). They just are different whether they are loaded automatically |
114 | at startup or manually by any application. | 118 | at startup or manually by any application. |
115 | On MacOS-X, the plugins are loaded by a special mechanism and must be in a special | 119 | On MacOS-X, the plugins are loaded by a special mechanism and must be in a special |
116 | binary format. Therefore you have to add the term "plugin" to the CONFIG-clause, as | 120 | binary format. Therefore you have to add the term "plugin" to the CONFIG-clause, as |
117 | for instance: | 121 | for instance: |