[Mono-osx] Bundling Mono for Dumbarton
Eoin Norris
e.norris at mac.com
Mon Dec 4 05:51:10 EST 2006
r.
I've done this. This should get you started and Allan will chime in,
I suppose.
1) You should build the dumbarton project as part of the main project
i.e. add the project to the main project not as a target but a sub-
project.
2) Judy, Dumbarton and your main project should build to the same
directory ( a xCode limitation)
3) The Dumbarton project needs to be built with the installation
directory setting set to @executable_path/../Frameworks ( in the
Build settings of Get Info). This tells the linker to look for the
dumbarton frameworks at that path from the executable.
4) Link against the Dumbarton project at the linked phase. Chose Get
Info ( right click) the target, and chose the general tab. Click the
add button on the bottom to add the Dumbarton framework to the main
project.
Now the post build phase. This is not quite perfect but will get you
going.
You should copy the mono libraries to within your bundle. ( I put it
in ../Contents/Library). Now the imeem guys have a script which works
out what actual parts of mono they need ( and they get the
application to be reduced in size significantly). To get going,
however, I just copied all of mono :-)
set -x
if [ -f "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/Libraries/
mono/" ]
then
echo "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/Libraries/
mono/" exists!
else
mkdir "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/Libraries/mono"
cp -r /Library/Frameworks/Mono.framework/Versions/Current/lib
"$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/Libraries/mono/"
cp -r /Library/Frameworks/Mono.framework/Versions/Current/etc
"$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/Libraries/mono/"
fi
Then you need to use install_name_tool to change where the linker
expects to find the library when loading at run time. The installed
mono libraries have already linked against your executable and
against dumbarton ( and against themselves).
if you run oTool -L on you executable you will see something like
this ( note that Dumbarton already points to the @executable_path)
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
(compatibility version 1.0.0, current version 11.0.0)
@executable_path/../Frameworks/Dumbarton.framework/Versions/
A/Dumbarton (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/QuartzCore.framework/Versions/A/
QuartzCore (compatibility version 1.2.0, current version 1.4.9)
/Library/Frameworks/Mono.framework/Versions/Current/lib eoin/
libmono.0.0.0.dylib (compatibility version 1.0.0, current version 1.0.0)
...
you want
/System/Library/Frameworks/Cocoa.framework/Versions/A/Cocoa
(compatibility version 1.0.0, current version 11.0.0)
@executable_path/../Frameworks/Dumbarton.framework/Versions/
A/Dumbarton (compatibility version 1.0.0, current version 1.0.0)
/System/Library/Frameworks/QuartzCore.framework/Versions/A/
QuartzCore (compatibility version 1.2.0, current version 1.4.9)
@executable_path/../Libraries/mono/lib/libmono.0.0.0.dylib
(compatibility version 1.0.0, current version 1.0.0)
....
And not just for libmono.0.0.0.dylib, of course. The way to do this is
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libmono.0.0.0.dylib @executable_path/../Libraries/
mono/lib/libmono.0.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOS/$PRODUCT_NAME"
which acts on the last parameter ( the name of your executable), to
change references from "/Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libmono.0.0.0.dylib " to "@executable_path/../Libraries/
mono/lib/libmono.0.0.0.dylib "
I had to do this for Dumbarton as well ( which had built against the
installed framework) and some of the mono libraries also have to be
changed in case they reference other mono libraries in /Library/
Framework.
Horrendous stuff. Here is what worked for me. Overkill I think, but
Allan probably have a better script ( and yes this script has to be
changed for each new version of Mono as the versions are harcoded
i.e. (..Versions/1.2.1/lib..).
I basically changed everything, and probably more than I needed to
change.
I was working on a script to produce something like this
automatically based on what I am actually linking against, and to
reduce the number of libraries I need to copy to my bundle but it is
not ready for primetime yet.
HEre is a block headed approach.
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libMonoPosixHelper.dylib @executable_path/../
Libraries/mono/lib/libMonoPosixHelper.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCTNAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libMonoSupportW.dylib @executable_path/../
Libraries/mono/lib/libMonoSupportW.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOs/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libasprintf.0.0.0.dylib @executable_path/../
Libraries/mono/lib/libasprintf.0.0.0.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libfreetype.6.3.8.dylib @executable_path/../
Libraries/mono/lib/libfreetype.6.3.8.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgdiplus.0.0.0.dylib @executable_path/../
Libraries/mono/lib/libgdiplus.0.0.0.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libMonoSupportW.dylib @executable_path/../
Libraries/mono/lib/libMonoSupportW.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOs/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgettextlib-0.14.1.dylib @executable_path/../
Libraries/mono/lib/liblibgettextlib-0.14.1.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgettextpo.0.1.0.dylib @executable_path/../
Libraries/mono/lib/libgettextpo.0.1.0.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgdiplus.0.0.0.dylib @executable_path/../
Libraries/mono/lib/libgdiplus.0.0.0.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCTNAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgettextsrc-0.14.1.dylib @executable_path/../
Libraries/mono/lib/libgettextsrc-0.14.1.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libglib-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libglib-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgmodule-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libgmodule-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgobject-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libgobject-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgthread-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libgthread-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libikvm-native.dylib @executable_path/../Libraries/
mono/lib/libikvm-native.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libintl.3.4.0.dylib @executable_path/../Libraries/
mono/lib/libintl.3.4.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgthread-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libgthread-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libjpeg.62.dylib @executable_path/../Libraries/
mono/lib/libjpeg.62.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOs/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libmono.0.0.0.dylib @executable_path/../Libraries/
mono/lib/libmono.0.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libpng.3.0.0.dylib @executable_path/../Libraries/
mono/lib/libpng.3.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libpng12.0.0.0.dylib @executable_path/../Libraries/
mono/lib/libpng12.0.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libungif.4.1.3.dylib @executable_path/../Libraries/
mono/lib/libungif.4.1.3.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOS/$PRODUCT_NAME"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libtiff.3.7.1.dylib @executable_path/../Libraries/
mono/lib/libtiff.3.7.1.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/MacOS/$PRODUCT_NAME"
# do this for the installed Dumbarton build
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libMonoPosixHelper.dylib @executable_path/../
Libraries/mono/lib/libMonoPosixHelper.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libMonoSupportW.dylib @executable_path/../
Libraries/mono/lib/libMonoSupportW.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libasprintf.0.0.0.dylib @executable_path/../
Libraries/mono/lib/libasprintf.0.0.0.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libfreetype.6.3.8.dylib @executable_path/../
Libraries/mono/lib/libfreetype.6.3.8.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgdiplus.0.0.0.dylib @executable_path/../
Libraries/mono/lib/libgdiplus.0.0.0.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libMonoSupportW.dylib @executable_path/../
Libraries/mono/lib/libMonoSupportW.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgettextlib-0.14.1.dylib @executable_path/../
Libraries/mono/lib/liblibgettextlib-0.14.1.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgettextpo.0.1.0.dylib @executable_path/../
Libraries/mono/lib/libgettextpo.0.1.0.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgdiplus.0.0.0.dylib @executable_path/../
Libraries/mono/lib/libgdiplus.0.0.0.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgettextsrc-0.14.1.dylib @executable_path/../
Libraries/mono/lib/libgettextsrc-0.14.1.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libglib-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libglib-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgmodule-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libgmodule-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgobject-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libgobject-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgthread-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libgthread-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libikvm-native.dylib @executable_path/../Libraries/
mono/lib/libikvm-native.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libintl.3.4.0.dylib @executable_path/../Libraries/
mono/lib/libintl.3.4.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libgthread-2.0.0.600.3.dylib @executable_path/../
Libraries/mono/lib/libgthread-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libjpeg.62.dylib @executable_path/../Libraries/
mono/lib/libjpeg.62.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libmono.0.0.0.dylib @executable_path/../Libraries/
mono/lib/libmono.0.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/Frameworks/Dumbarton.framework/Versions/A/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libpng.3.0.0.dylib @executable_path/../Libraries/
mono/lib/libpng.3.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libpng12.0.0.0.dylib @executable_path/../Libraries/
mono/lib/libpng12.0.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libungif.4.1.3.dylib @executable_path/../Libraries/
mono/lib/libungif.4.1.3.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/
Versions/1.2.1/lib/libtiff.3.7.1.dylib @executable_path/../Libraries/
mono/lib/libtiff.3.7.1.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/
Contents/Frameworks/Dumbarton.framework/Dumbarton"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libgmodule-2.0.0.600.3.dylib @executable_path/../Libraries/
mono/lib/libgmodule-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/../Libraries/mono/lib/libmono.
0.0.0.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libgthread-2.0.0.600.3.dylib @executable_path/../Libraries/
mono/lib/libgthread-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/../Libraries/mono/lib/libmono.
0.0.0.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libglib-2.0.0.600.3.dylib @executable_path/../Libraries/
mono/lib/libglib-2.0.0.600.3.dylib "$TARGET_BUILD_DIR/
$FULL_PRODUCT_NAME/Contents/MacOS/../Libraries/mono/lib/libmono.
0.0.0.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libintl.3.4.0.dylib @executable_path/../Libraries/mono/lib/
libintl.3.4.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/lib/libmono.0.0.0.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libglib-2.0.0.dylib @executable_path/../Libraries/mono/lib/
libglib-2.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/lib/libgmodule-2.0.0.600.3.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libintl.3.4.0.dylib @executable_path/../Libraries/mono/lib/
libintl.3.4.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/lib/libglib-2.0.0.600.3.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libglib-2.0.0.dylib @executable_path/../Libraries/mono/lib/
libglib-2.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/lib/libglib-2.0.0.600.3.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libintl.3.4.0.dylib @executable_path/../Libraries/mono/lib/
libintl.3.4.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/lib/libglib-2.0.0.600.3.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libglib-2.0.0.dylib @executable_path/../Libraries/mono/lib/
libglib-2.0.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/lib/libgthread-2.0.0.600.3.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libintl.3.4.0.dylib @executable_path/../Libraries/mono/lib/
libintl.3.4.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/lib/libgthread-2.0.0.600.3.dylib"
install_name_tool -change /Library/Frameworks/Mono.framework/Versions/
1.2.1/lib/libintl.3.4.0.dylib @executable_path/../Libraries/mono/lib/
libintl.3.4.0.dylib "$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/lib/libgmodule-2.0.0.600.3.dylib"
export MONO_PATH="$TARGET_BUILD_DIR/$FULL_PRODUCT_NAME/Contents/
MacOS/../Libraries/mono/"
-- Eoin Norris
On 4 Dec 2006, at 10:14, R. Tyler Ballance wrote:
> Allan, I know you aren't one for sharing your magical secrets, but
> I'm starting to seriously consider spending the next month or so
> dedicated to working on a Mono project that would be initially
> released as a Cocoa/Mono application (via Dumbarton) but the one
> thing I would like to be keen on before beginning is the
> feasibility of bundling the necessary Mono dylibs with my .app.
>
> I really do like the Dumbarton project, and I'd probably have a
> similar use for it that imeem does (my networking, "business logic"
> core of the app), but the actual bundle-linkage-foo that you guys
> perform isn't too well know.
>
> So here's what I'm thinking, I know documenting eccentric build and
> release processes is about as entertaining as burning your hand
> with a toaster (breakfast was fun today), but I'll put up a bounty
> if it will help.
>
> I'd be more than happy to send you and Alf some good Shiner Bock
> (fantastic Texas brew) if you guys can document something to the
> point of being usable for distributing Cocoa/Mono applications.
>
>
> If that's not enough to convince you, I'll throw in erm....a...a
> box of paper clips, and a tube of chap stick; whatever I can do to
> procure some of that information out of you guys ;)
>
>
> Cheers
> R. Tyler Ballance: Custom Mac and Linux Development at bleep.
> consulting
> contact: tyler at bleepconsulting.com | jabber: tyler at jabber.geekisp.com
>
>
> _______________________________________________
> Mono-osx mailing list
> Mono-osx at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-osx
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-osx/attachments/20061204/d1ecca8c/attachment-0001.html
More information about the Mono-osx
mailing list