need help: trying to compile 047 X11 for Tiger

Hello everybody,
people who asked me to compile 0.47 X11 for Tiger did probabely not know what a bad idea that was - because things tend to be done much faster by oneself than when teaching a complete ignorant is required… -
Nevertheless, I feel honoured by the request and regret having to bother all you with another set of childish questions.
What I did up to now: I set up my machine and compiled 0.47 aqua, the description given here:
http://wiki.inkscape.org/wiki/index.php/ CompilingMacOsX#Building_Aqua_November_2009
should be fairly accurate.
Now I'd like to set up another tree for a X11 version, trying to follow this:
http://wiki.inkscape.org/wiki/index.php/ CompilingMacOsX#Installing_a_second_Macports_tree_. 28recommended_approach.29
- but just the other way round - as my aqua building environment was the first in place.
This is what the instructions say:
Installing a second Macports tree (recommended approach) Rather than deactivating and reactivating ports, you can also keep two MacPorts trees side by side, provided you install the second one from source. Let say I want to install a new tree for native versions in /opt/local/native, I would do
Right. I created a /opt/local/x11 instead
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin cd ~/MacPorts-1.x.x/
This is the first place to stumble - I dont have a ~/MacPorts- whatever, allthough the latest macports is installed. What's going wrong here?
./configure --prefix=/opt/local-native --with-tclpackage=/Library/ Tcl/macports-native make sudo make install
Next stumble - I learned that the osx-build.sh script can do nearly everything. So does it make sense to call configure?
You can set this second tree up to always build packages with specific variants. For example, you can edit the /opt/local-native/ etc/macports/variants.conf file to have the following line:
+universal +no_x11 +quartz
O.k. - created a /opt/x11/etc/macports/variants.conf containing
+x11
You can remove the +universal if you only want to build inkscape for your host architecture. You may also need to set alternate applications_dir and frameworks_dir variables in the /opt/local- native/etc/macports/macports.conf
There is not such a file. I can create /opt/x11/etc/macports/ macports.conf, but
file so that applications and frameworks install by this macports (for example by python) don't clash with your standard macports tree.
… not the shadow on an idea what that means…
Then you need to have only one version of the port command in the path at any time so you need to setup your .bashrc (or .bash_profile or .profile) accordingly. I use shell aliases to quickly and temporarily switch to the universal version:
alias portpathregular="export PATH=/opt/local/bin:/opt/local/sbin:/ Developer/Tools:/usr/local/bin: \ /usr/X11R6/bin:/bin:/sbin:/usr/ bin:/usr/sbin" alias portpathnative="export PATH=/opt/local-native/ bin:/opt/local-native/sbin:/Developer/Tools:/usr/local/bin: \ /usr/ X11R6/bin:/bin:/sbin:/usr/bin:/usr/sbin"
o.k. - that was easy.
Inbetween I try to install the x11 variants of cairo +x11 pango +x11 poppler +x11 gtk2 +x11…
As the patient reader, who came down to this place in my opus may have noticed - there is a big lack of fundamental knowledge here. So if anybody would be kind enough to give me further instructions on the questions mentioned above, mainly in what way the osx-build-sh can be part of it - I'd be grateful.
Yours,
Wolf

On 28/11/09 22:43, Wolf Drechsel wrote:
Now I'd like to set up another tree for a X11 version, trying to follow this:
http://wiki.inkscape.org/wiki/index.php/CompilingMacOsX#Installing_a_second_...
- but just the other way round - as my aqua building environment was
the first in place.
This is what the instructions say:
Installing a second Macports tree (recommended approach) Rather than deactivating and reactivating ports, you can also keep two MacPorts trees side by side, provided you install the second one from source. Let say I want to install a new tree for native versions in /opt/local/native, I would do
Right. I created a /opt/local/x11 instead
You need to use a path containing at least 50 characters if you plan to package and *distribute* a version of Inkscape 0.47 (basically both when built with X11 dependencies or as +quartz variant), for example like this:
/opt/local-macports-with-a-really-long-directory-name/
This is mentioned as prerequisite on the Wiki page and is necessary to bundle Inkscape in such a way that version conflicts with installed (system or MacPorts) libraries no longer can cause a crash or prevent Inkscape from launching.
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin cd ~/MacPorts-1.x.x/
This is the first place to stumble - I dont have a ~/MacPorts- whatever, allthough the latest macports is installed. What's going wrong here?
How did you install MacPorts (the 'port' command) for your first '+quartz' tree?
Here the instructions on the Wiki page refer to: 1) you had downloaded the current tarball for MacPorts 1.x.x 2) unpacked it into a directory wherever it suited you to keep sources of packages you compile yourself (the examples assumes in your home directory aka '~') 3) 'cd' into the top-level directory of the unpacked MacPorts sources
Note: AFAIK if you used the DMG version of MacPorts (containing the Mac OS X Package (.pkg) Installer), you need to download the tarball and unpack the sources to re-configure and re-build the 'port' command for a new location of the MacPorts tree.
See also the instructions 'Source Installation' at http://www.macports.org/install.php
4) for the next steps (configure, build and install the 'ports' command): make sure you use the correct path to the second tree structure every time the default '/opt/local' is assumed.
./configure --prefix=/opt/local-native --with-tclpackage=/Library/ Tcl/macports-native make sudo make install
Next stumble - I learned that the osx-build.sh script can do nearly everything. So does it make sense to call configure?
'inkscape-0.47/packaging/macosx/osx-build.sh' is used to compile and build Inkscape.app. It has nothing to do with the 'port' command which is built and installed to use the MacPorts port management system (to install all dependencies needed to build Inkscape).
The configure command you quoted above is executed in the top-level directory of the unpacked tarball of the MacPorts sources, downloaded from their website http://www.macports.org/, see my 'Note:' above.
You can set this second tree up to always build packages with specific variants. For example, you can edit the /opt/local-native/ etc/macports/variants.conf file to have the following line:
+universal +no_x11 +quartz
O.k. - created a /opt/x11/etc/macports/variants.conf containing
at this point you seem to have used at least *three* different paths to set up your second MacPorts tree:
1) "I created a /opt/local/x11 instead" 2) "./configure --prefix=/opt/local-native" 3) "created a /opt/x11/etc/macports/variants.conf"
You have to decide which one it is you prefer (please use one that is at least 50 characters long) and stick to it in all relevant places - for example you will also have to use it in the shell aliases you'll add to '~/.bashrc' to switch between the different MacPorts trees.
Snipping the remaining questions and waiting for an update if above comments helped to clarify some of the questions ;-)
~suv
participants (2)
-
Wolf Drechsel
-
~suv