AFAIK, the DLLImport binding depend on loading information of dynamic libraries, if you want to call something statically linked in the runtime you'll need to move to using internal calls, but that means an extensive rewrite of the the affected libraries both managed and native as the protocol doesn't include automatic marshaling of managed types, and correct versioning is a must to avoid crashes on incompatible ABIs.<div>
<br></div><div>Another possibility is to change the dynamic libraries binding mechanism to search for statically linked symbols, not sure how complex this would be.</div><div><br></div><div>The best alternative is to fix the loader and keep the .so files around.<br>
<div><br></div><div>Just my two cents,</div><div><br clear="all">Rafael "Monoman" Teixeira<br>---------------------------------------<br>"The most exciting phrase to hear in science, the one that heralds new discoveries, is not 'Eureka!' (I found it!) but 'That's funny ...'"<br>
Isaac Asimov<br>US science fiction novelist & scholar (1920 - 1992)<br>
<br><br><div class="gmail_quote">On Thu, Apr 12, 2012 at 4:43 AM, ralphbariz <span dir="ltr"><<a href="mailto:ralph.bariz@gmail.com">ralph.bariz@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi,<br>
<br>
I'm trying to compile a static one binary mono(Because the target system has<br>
an incompatible loader).<br>
First I got mono to build statically, but without libMonoPosixHelper in the<br>
archive. After a few tries, I got also this, changed all DllImport(MPH)<br>
calls in Mono.Posix.dll to DllImport("__Internal"), it still gives me a<br>
TypeInitializationexception when I try to access the stat symbol of the<br>
libMonoPosixHelper. With objdump I looked inside, the symbols of<br>
libMonoPosixHelper are all inside the archive, so what am I doing wrong?<br>
<br>
The script used to build: <a href="http://pastebin.com/t7dqdBYn" target="_blank">http://pastebin.com/t7dqdBYn</a><br>
<br>
Regards<br>
Ralph<br>
<br>
--<br>
View this message in context: <a href="http://mono.1490590.n4.nabble.com/DllImport-Internal-and-libMonoPosixHelper-static-build-tp4551182p4551182.html" target="_blank">http://mono.1490590.n4.nabble.com/DllImport-Internal-and-libMonoPosixHelper-static-build-tp4551182p4551182.html</a><br>

Sent from the Mono - Dev mailing list archive at Nabble.com.<br>
_______________________________________________<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" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
</blockquote></div><br></div></div>