1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158
|
SWAMI-2.0 Installation on Mac OS X.5.5 (Leopard)
================================================
Ebrahim Mayat <emayat at users dot sourceforge dot net>
Josh Green <jgreen at users dot sourceforge dot net>
Last updated: 9th October, 2008
Requirements:
- fluidsynth
- fink package distribution <http://www.finkproject.org/download/index.php?phpLang=en>
- X11.app, X11SDK.pkg, OpenGLSDK.pkg and QuickTimeSDK.pkg (Leopard Install DVD)
- fink packages: cairo, gtk+2, gtk+2-dev, audiofile, flac, gettext, intltool, libtool14,
libgnomecanvas2-dev, libxml2, pygtk2-py24-dev, pkgconfig, libart2, libglade2,
pango1-xft2-ft219-dev, fftw3 and gtksourceview
for example: "$ fink install gtk+2-dev"
libinstpatch: configure && make && sudo make install:
$ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure "LDFLAGS=-L/usr/local/lib -L/sw/lib" "CFLAGS=-I/usr/local/include -I/sw/include"
SWAMI: configure && make && sudo make install
Building an app bundle with GTK-OSX
===================================
BALATON Zoltan <balaton at users dot sourceforge dot net>
Last updated: 16th November, 2013
Resources:
http://www.gtk.org/download/macos.php
IMPORTANT! If you have packages installed from MacPorts, Fink, Homebrew or other
repositories you have to make sure that these are not visible while building
GTK-OSX. The easiest way is to create a new user for this and run everything
while logged in as that user. Mixing GTK-OSX with packages from other builds
will fail so make sure your path and environment is clean before continuing!
1. Build GTK-OSX (see: https://live.gnome.org/GTK%2B/OSX/Building)
- Download and run gtk-osx-build-setup.sh
- Set up your environment:
$ cat <<EOF >>$HOME/.profile
DEVELOPER_DIR="/Volumes/10.7/Developer"
PATH="$DEVELOPER_DIR/usr/bin":$PATH:"$HOME/.local/bin"
export DEVELOPER_DIR PATH
EOF
$ . $HOME/.profile
- Customise .jhbuildrc-custom for example:
setup_sdk("10.6", sdk_version="10.6", architectures=["i386"])
moduleset=os.environ['HOME'] + '/custom.modules'
module_autogenargs['cairo'] = '--enable-ft=no'
skip=["gnome-doc-utils", "cups"]
- Bootstrap jhbuild and build some packages
$ jhbuild shell # make sure to enter the jhbuild shell first
$ jhbuild bootstrap
$ jhbuild build meta-gtk-osx-bootstrap
$ jhbuild build meta-gtk-osx-freetype
$ jhbuild build python
$ jhbuild build meta-gtk-osx-core
2. Teach jhbuild about some more dependencies and build them
- Edit $HOME/custom.modules to have something like this:
<?xml version="1.0" standalone="no"?> <!--*- mode: nxml -*-->
<!DOCTYPE moduleset SYSTEM "moduleset.dtd">
<?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
<moduleset>
<include href="/Users/gtkosx/Source/jhbuild/modulesets/gtk-osx.modules"/>
<tarball id="libfftw3" version="3.3.4" supports-non-srcdir-builds="no"
autogenargs="--enable-shared --enable-float --enable-sse2">
<source href="http://www.fftw.org/fftw-3.3.4.tar.gz"
size="3940427" md5sum="2edab8c06b24feeb3b82bbb3ebf3e7b3"/>
</tarball>
<tarball id="libsndfile" version="1.0.25" supports-non-srcdir-builds="no"
autogenargs="CPPFLAGS=-I$DEVELOPER_DIR/Headers/FlatCarbon">
<source href="http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.25.tar.gz"
size="1060692" md5sum="e2b7bb637e01022c7d20f95f9c3990a2"/>
</tarball>
<repository type="tarball" name="sourceforge"
href="http://downloads.sourceforge.net/sourceforge/"/>
<autotools id="fluidsynth" autogenargs="--without-readline">
<branch module="fluidsynth/fluidsynth-1.1.6.tar.gz"
version="1.1.6" repo="sourceforge"
size="958735" md5sum="ae5aca6de824b4173667cbd3a310b263" />
<dependencies>
<dep package="glib"/>
<dep package="libsndfile"/>
</dependencies>
</autotools>
<repository type="tarball" name="gnome"
href="http://ftp.gnome.org/pub/GNOME/sources/" />
<autotools id="libgnomecanvas">
<branch module="libgnomecanvas/2.30/libgnomecanvas-2.30.3.tar.gz"
version="2.30.3" repo="gnome"
size="760152" md5sum="3dbf66a8c492f4e044991669671234e2" />
<dependencies>
<dep package="intltool"/>
<dep package="gtk+"/>
<dep package="libart_lgpl"/>
<dep package="gnome-common"/>
</dependencies>
</autotools>
</moduleset>
- Build them:
$ jhbuild shell # re-enter shell if exited from it, otherwise not needed
$ jhbuild build libfftw3
$ jhbuild build fluidsynth
$ jhbuild build libgnomecanvas
$ jhbuild build libxml2
3. Now we could teach jhbuild to also build libinstpatch and swami like above if
we built a release from tarballs but I simply built these by hand instead:
$ jhbuild shell # always use the shell for anything needing stuff built by jhbuild
$ cd $HOME/swami/src/libinstpatch
$ ./configure --prefix=$HOME/swami/inst --build=i386-apple-darwin12.5.0 \
--host=i386-apple-darwin12.5.0 --target=i386-apple-darwin12.5.0
$ make && make install
$ cd $HOME/swami/src/swami
$ ./configure --prefix=$HOME/swami/inst --build=i386-apple-darwin12.5.0 \
--host=i386-apple-darwin12.5.0 --target=i386-apple-darwin12.5.0 \
PKG_CONFIG_PATH=$HOME/swami/inst/lib/pkgconfig:$PKG_CONFIG_PATH
$ make && make install
4. Now we have everything built, let's make an app bundle
- Install gtk-mac-bundler (see https://live.gnome.org/GTK%2B/OSX/Bundling)
$ cd $HOME/Source
$ git clone git://git.gnome.org/gtk-mac-bundler
$ cd gtk-mac-bundler
$ make install
- After reviewing the swami.bundle file for correct paths build a bundle:
$ cd $HOME/swami/src/swami/package/osxbundle
$ jhbuild run gtk-mac-bundler swami.bundle
$ ln -s Resources/lib/swami $HOME/swami/Swami.app/Contents/PlugIns
|