<div dir="ltr">Thanks for input.<div><br></div><div>I have strip the binaries.I nearly coming size mentioned above.</div><div><br></div><div>I still need to play with mkbundle.</div><div><br></div><div>Currently i have done manual picking of my required assemblies out of mono build.Is their any way i can get this by enabling disabling configure option or any other better way i can use.</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 24, 2014 at 9:27 PM, Jonathan Pryor <span dir="ltr"><<a href="mailto:jonpryor@vt.edu" target="_blank">jonpryor@vt.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Nov 23, 2014, at 11:45 PM, techi eth <<a href="mailto:techieth@gmail.com">techieth@gmail.com</a>> wrote:<br>
> I would be happy if I will get all running under 10 MB.I have listed approx size of few essential. I am not sure how to reduce & get size under 10 MB.<br>
<br>
</span>Where are you getting these file sizes? Perhaps you need to strip(1) the binaries?<br>
<span class=""><br>
> 1)      Mono (link to mono->sgen) : 13 MB<br>
<br>
</span>I'm not sure what this means. If you mean the mono binary, you need to strip(1) it; on OS X, it's 4.1MB.<br>
<br>
> 2)      <a href="http://Libmono-2.0.so" target="_blank">Libmono-2.0.so</a> : 12 MB<br>
<br>
You need to strip(1) this binary. On OS X, libmonosgen-2.0.1.dylib is 4.2MB.<br>
<br>
Also note that the `mono` binary doesn't require libmono*.so; it statically links it in. libmono*.so is for embedding use.<br>
<br>
> 3)      Mscorelib.dll : 15 MB<br>
<br>
Where are you getting this file size? On OS X, the 4.5 mscorlib.dll is 2.9MB.<br>
<br>
For example, consider mkbundle(1):<br>
<br>
        <a href="http://docs.go-mono.com/?link=man%3amkbundle(1)" target="_blank">http://docs.go-mono.com/?link=man%3amkbundle(1)</a><br>
<br>
mkbundle(1) can be used to bundle all assemblies into a single file, to simplify distribution. Using mkbundle(1), you can have a single native binary which only requires libmonoboehm-2.dylib to execute, no additional assemblies, by using `mkbundle --deps`:<br>
<br>
        $ AS='as -arch i386' \<br>
                CC='cc -arch i386' \<br>
                PKG_CONFIG_PATH=/Library/Frameworks/Mono.framework/Libraries/pkgconfig \<br>
                mkbundle --deps -z hw.exe -o hw2<br>
<br>
        $ ls -lh hw2<br>
        -rwxr-xr-x+ 1 jon  staff   1.0M Nov 24 10:53 hw2<br>
<br>
        $ nm -ufm hw2<br>
                 (undefined) external ___memcpy_chk (from libSystem)<br>
                 (undefined) external ___stderrp (from libSystem)<br>
                 (undefined) external _exit (from libSystem)<br>
                 (undefined) external _fprintf (from libSystem)<br>
                 (undefined) external _getenv (from libSystem)<br>
                 (undefined) external _inflate (from libz)<br>
                 (undefined) external _inflateEnd (from libz)<br>
                 (undefined) external _inflateInit2_ (from libz)<br>
                 (undefined) external _malloc (from libSystem)<br>
                 (undefined) external _memset (from libSystem)<br>
                 (undefined) external _mono_main (from libmonoboehm-2)<br>
                 (undefined) external _mono_register_bundled_assemblies (from libmonoboehm-2)<br>
                 (undefined) external _mono_set_dirs (from libmonoboehm-2)<br>
                 (undefined) external _printf (from libSystem)<br>
                 (undefined) external _strchr (from libSystem)<br>
                 (undefined) external _strdup (from libSystem)<br>
                 (undefined) external dyld_stub_binder (from libSystem)<br>
<br>
With the above setup, "Hello world" requires "only" ~5.2MB of disk to run (for OS X binaries).<br>
<br>
 - Jon<br>
<br>
</blockquote></div><br></div>