<div dir="ltr">I had vague recollections that there were some ifdefs in the managed code which made it platform specific, but I could be wrong or they could just be gone nowadays. Jonp probably knows best ;)<div><br>Either way, if you deploy it without the matching native lib you can hit crashes, so the simplest option all round is to just rely on the system one, if at all possible :)</div><div><br></div><div>Alan</div></div><div class="gmail_extra"><br><div class="gmail_quote">On 30 March 2016 at 13:06, Chris Swiedler <span dir="ltr"><<a href="mailto:cswiedler@trionworlds.com" target="_blank">cswiedler@trionworlds.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">To Alan's point, we did see crashes when we (unintentionally) deployed Mono.Posix.dll along with our app. Our solution was, like he said, to Not Do That, and use our Mono.Posix as a compile-time library only.<br>
<br>
I do think it's much easier to do it this way than to have different compile targets, which (if I'm understanding correctly) is what the other suggestions all require.<br>
<span class="HOEnZb"><font color="#888888"><br>
chris<br>
</font></span><span class="im HOEnZb"><br>
-----Original Message-----<br>
From: <a href="mailto:mono-devel-list-bounces@lists.ximian.com">mono-devel-list-bounces@lists.ximian.com</a> [mailto:<a href="mailto:mono-devel-list-bounces@lists.ximian.com">mono-devel-list-bounces@lists.ximian.com</a>] On Behalf Of Jonathan Pryor<br>
Sent: Wednesday, March 30, 2016 7:04 AM<br>
To: Alan McGovern <<a href="mailto:alan.mcgovern@gmail.com">alan.mcgovern@gmail.com</a>><br>
Cc: mono-devel-list <<a href="mailto:mono-devel-list@lists.ximian.com">mono-devel-list@lists.ximian.com</a>><br>
Subject: Re: [Mono-dev] Cross Platform on Linux/Windows with Mono.Posix reference on Linux<br>
<br>
</span><div class="HOEnZb"><div class="h5">On Mar 30, 2016, at 8:33 AM, Alan <<a href="mailto:alan.mcgovern@gmail.com">alan.mcgovern@gmail.com</a>> wrote:<br>
> If you package Mono.Posix.dll your app *will crash* on different systems.<br>
<br>
Not necessarily.<br>
<br>
> This binary is platform specific and is not safe to copy between OS’s.<br>
<br>
Mono.Posix.dll *itself* contains no platform-specific code and is perfectly safe to copy between operating systems.<br>
<br>
Mono.Posix.dll contains P/Invokes into “MonoPosixHelper” (libMonoPosixHelper.dylib on OS X, MonoPosixHelper.dll on Windows, etc.), and MonoPosixHelper contains operating system-specific code. It *cannot* be copied between operating systems; it’s a native library.<br>
<br>
> It's fine to have a copy of Mono.Posix.dll used purely for compilation purposes. But at runtime you have to use the system provided one, which typically means the one provided by the system's mono installation.<br>
<br>
It’s entirely fine to include Mono.Posix.dll with your app, SO LONG AS you *also* copy and distribute MonoPosixHelper with your app.<br>
<br>
Additionally, Mono.Posix.dll also P/Invokes other native libraries such as INTL.DLL (Mono.Unix.Catalog) and MSVCRT.DLL (Mono.Unix.Native.Stdlib), which should be usable on Windows (so long as you also distribute INTL.DLL, etc.).<br>
<br>
 - Jon<br>
<br>
</div></div><div class="HOEnZb"><div class="h5">_______________________________________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com">Mono-devel-list@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" rel="noreferrer" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
</div></div></blockquote></div><br></div>