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