[Mono-dev] Next steps for mkbundle

Greg Young gregoryyoung1 at gmail.com
Sat Aug 20 20:02:24 UTC 2016


We have been using mkbundle for a long time (really helps getting over
irrational viewpoints of having to install mono from some people).
Great to hear its moving forward!

If people are interested in how we use it you can find it here:
https://github.com/EventStore/EventStore/blob/2772c1c2d8d229b552ede402350cab8b0ac4b639/scripts/package-mono/package-linux.sh
basically EventStore ships as a native package. This is also quite
useful as it allows you to explicitly control the mono version.

Cheers,

Greg

On Sat, Aug 20, 2016 at 3:13 AM, Miguel de Icaza via Mono-devel-list
<mono-devel-list at lists.dot.net> wrote:
> Hello team,
>
>
>
> I am very happy with the new hack to simplify creating bundles of
> applications, because we no longer need a C compiler to make these happen,
> and as a bonus, we now allow cross-compilation of bundles.
>
>
>
> Just a couple of days ago, I added support for a new “--18n” flag that
> controls which encoders are shipped with the application, similar to the
> same setting that we surface on Xamarin.{Android,iOS,tvOS,macOS}.
>
>
>
> The cross-compilation feature has surfaced a problem, when we bundle, we
> bundle using the assemblies from the system, but a VM that you can specify,
> and this can lead to mismatches between the C and C# code in the runtime
> (ie, Mono 4.0 and mscorlib 4.2).
>
>
>
> So it seems to me that instead of just shipping Mono runtimes in our server
> for cross compilation, we are going to have to ship the entire set of
> assemblies that are part of a distribution. Perhaps all of
> $prefix/lib/mono/gac as well as the C runtime, and the support libraries for
> Mono.Posix.
>
>
>
> Now, that is the easy part.
>
>
>
> The part that I am debating is the part where we would like to distribute
> shared libraries that go with the bundled binary.   Either we can require
> that shared libraries be distributed side-by-side, to be a user/distribution
> problem, or to allow a way in mkbundle to ship those on behalf of the
> user/distributor.
>
>
>
> Something like:
>
>
>
>                 mcs foo.cs  -pkg:gtk-sharp-2.0
>
>                 mkbundle –cross arm64-debian-linux-4.2.0
> –shared-libs=/tmp/my-gtk-2.0-for-debain-shared-libs
>
>
>
> Thoughts?
>
> Miguel.
>
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.dot.net
> http://lists.dot.net/mailman/listinfo/mono-devel-list
>



-- 
Studying for the Turing test


More information about the Mono-devel-list mailing list