<div>Hi!</div><div><br /></div><div><br /></div><div> In fact, cm3 AMD64_MINGW is worked variant.</div><div>It is good.</div><div><br /></div><div><br /></div><div> But killing possiblity of creating ".dll" and(or) Linux analogs is "early GoLang way".</div><div><br /></div><div> Personal I don't shue that it is good.</div><div>( As I known even modern GoLang have possibility creating dynamic libraries).</div><div><br /></div><div><br /></div><div> Of course, if we can create _both_ dinamic and static lib / binary then -- "why not?"</div><div><br /></div><div><br /></div><div>Best regards, Victor Miasnikov </div><div><br /></div><div>08.01.2022, 13:22, "Jay K" <jayk123@hotmail.com>:</div><blockquote><div dir="ltr">
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
Yes. I'm also thinking about possible compatibility requirements if in a Linux distribution and an upgrade is done.</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
Like not having to worry about revising the version for changes.</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
Static libs and shared libs are both wonderful and horrible.</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
Also, I want to make an autotools target, that uses autoconf and automake, but I'm not sure I want to bring libtool in.</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
- Jay</div>
<div>
<div id="dd8fcbc3886f6beba9d56dd35eeb1be5appendonsend"></div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<hr style="display:inline-block;width:98%" />
<div id="f2e387f28ef856c18dfa722bbcbb9bfadivRplyFwdMsg" dir="ltr"><font color="#000000" face="Calibri, sans-serif" style="font-size:11pt"><b>From:</b> <a href="mailto:vvm@tut.by" target="_blank">vvm@tut.by</a> <<a href="mailto:vvm@tut.by" target="_blank">vvm@tut.by</a>><br />
<b>Sent:</b> Saturday, January 8, 2022 10:19 AM<br />
<b>To:</b> Jay K <<a href="mailto:jayk123@hotmail.com" target="_blank">jayk123@hotmail.com</a>>; Tony Hosking <<a href="mailto:antony.hosking@anu.edu.au" target="_blank">antony.hosking@anu.edu.au</a>>; m3devel <<a href="mailto:m3devel@elegosoft.com" target="_blank">m3devel@elegosoft.com</a>><br />
<b>Subject:</b> Re: [M3devel] dropping dynamic linking?</font>
<div> </div>
</div>
<div>
<div>Hi!</div>
<div><br />
</div>
<div><br />
</div>
<div>Q: Today AMD64_MINGW is static linked?</div>
<div><br />
</div>
<div><br />
</div>
<div>Best regards, Victor Miasnikov</div>
<div><br />
</div>
<div>08.01.2022, 11:11, "Jay K" <<a href="mailto:jayk123@hotmail.com" target="_blank">jayk123@hotmail.com</a>>:</div>
<blockquote>
<div dir="ltr">
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
Others had similar ideas:</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcgit.freebsd.org%2Fports%2Flog%2Fnet%2Fcvsup%3Fid%3D108df0eb691bcf9f242e5ef830bea1bb80db10d3%26showmsg%3D1&data=04%7C01%7C%7C48a1f1bcd906438437b308d9d2905c9c%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637772339743489990%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=gNwF1446t0l%2FQQGXAyc4Suo9s%2BEZqreD6iuGjxFGVlk%3D&reserved=0" target="_blank">https://cgit.freebsd.org/ports/log/net/cvsup?id=108df0eb691bcf9f242e5ef830bea1bb80db10d3&showmsg=1</a>
<div><br />
</div>
<div>Upgrade to snap-16.1f. This snapshot is primarily cleanups, John Polstra <span class="663ac51ebf2f33299e5fac760c233daex_1f1ea193f6735cf0wmi-callto">
<span class="1f1ea193f6735cf0wmi-callto">2002-01-02 2 -32</span></span>/+6<br />
</div>
<div><br />
</div>
<div>...</div>
<div><br />
</div>
<div>Remove the special static linking when PACKAGE_BUILDING is set.</div>
<div>When ezm3 is used, programs are always statically linked with the</div>
<div>Modula-3 libraries. This means that binaries built with this port</div>
<div>will be stand-alone, but still dynamically linked with the system</div>
<div>libraries. So, for example, they will work with runsocks</div>
<div><br />
</div>
<div>:)</div>
<div><br />
</div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px"> > I meant dynamic linking of libraries coded in Modula-3.</span><br />
</div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px"><br />
</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px">I find this still ambiguous, sorry.</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px">Can we speak of "to" and not "of"?<br />
What is being linked "to"?</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px">to libc?<br />
to m3core?</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px"><br />
</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px">My goal is to stop worrying about:</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px"> - maintaining the config files</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px"> - worrying about running "non-installed" executables </span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px"> - which systems support $origin </span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px"><br />
</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px">Dynamic linking to libc would remain.<br />
We don't do anything for that, it kinda just happens automatically. Kinda.</span></div>
<div><span style="background-color:rgb( 255 , 255 , 255 );display:inline !important;font-size:14px">I realize there is flexibilty there.</span></div>
<div><br />
</div>
<div>Building m3core.so, and therefore linking to it, is kinda the bothersome point.</div>
<div>I do realize the use cases though, say of multiple Modula-3 codebases, multiple Modula-3 .so</div>
<div>files, loaded into the same process, and sharing one m3core.so, one garbage collector.</div>
<div><br />
</div>
<div>That is something that might not work well w/o dynamic linking.</div>
<div>Though in the ELF model, it might..the first one kinda wins. But that doesn't</div>
<div>work on Mac with the two level namespace.</div>
<div><br />
</div>
<div>Perhaps delegating to libtool is a solution though, I have been mulling as well.</div>
<div><br />
</div>
- Jay<br />
</div>
<div>
<div id="957cc37db53c46eb2ed9ec10dab4a080x_dd8fcbc3886f6beba9d56dd35eeb1be5appendonsend"></div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<hr style="display:inline-block;width:98%" />
<div id="61edd77fd0f7d930d40dd1e0948592dfx_f2e387f28ef856c18dfa722bbcbb9bfadivRplyFwdMsg" dir="ltr"><font color="#000000" face="Calibri, sans-serif" style="font-size:11pt"><b>From:</b> Tony Hosking <<a href="mailto:antony.hosking@anu.edu.au" target="_blank">antony.hosking@anu.edu.au</a>><br />
<b>Sent:</b> Saturday, July 3, 2021 5:46 AM<br />
<b>To:</b> Jay K <<a href="mailto:jayk123@hotmail.com" target="_blank">jayk123@hotmail.com</a>>; m3devel <<a href="mailto:m3devel@elegosoft.com" target="_blank">m3devel@elegosoft.com</a>><br />
<b>Subject:</b> Re: dropping dynamic linking?</font>
<div> </div>
</div>
<div>
<div>
<div>
<div dir="ltr" style="background-color:rgb( 255 , 255 , 255 );color:rgb( 0 , 0 , 0 )">I meant dynamic linking of libraries coded in Modula-3.</div>
<div dir="ltr" style="background-color:rgb( 255 , 255 , 255 );color:rgb( 0 , 0 , 0 )"><br />
</div>
</div>
<div id="40350eba01ebafe4e535595c5c789f7x_b88337d9eb843d67edd10a6074f9d0d9x_ms-outlook-mobile-signature">
<div><br />
</div>
Get <a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Faka.ms%2Fo0ukef&data=04%7C01%7C%7C48a1f1bcd906438437b308d9d2905c9c%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637772339743489990%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=DSZP547XFyInrWafr%2Bf2KCRIVCrkfc40pYTiGUYzTX4%3D&reserved=0" target="_blank">
Outlook for iOS</a></div>
</div>
<hr style="display:inline-block;width:98%" />
<div id="5a36d355679fe47ce9fdc6c7e23f96cax_24dbee26ff517139c5431857a7e0db45x_divRplyFwdMsg" dir="ltr"><font color="#000000" face="Calibri, sans-serif" style="font-size:11pt"><b>From:</b> Jay K <<a href="mailto:jayk123@hotmail.com" target="_blank">jayk123@hotmail.com</a>><br />
<b>Sent:</b> Saturday, July 3, 2021 4:43:15 AM<br />
<b>To:</b> Tony Hosking <<a href="mailto:antony.hosking@anu.edu.au" target="_blank">antony.hosking@anu.edu.au</a>>; m3devel <<a href="mailto:m3devel@elegosoft.com" target="_blank">m3devel@elegosoft.com</a>><br />
<b>Subject:</b> Re: dropping dynamic linking?</font>
<div> </div>
</div>
<div dir="ltr">
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
Also, did you mean dynamic linking to Modula-3 i.e. m3core, or dynamically linked binaries in general, i.e. dynamically linked to libc?</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
These are really two separate things. Dynamic linking to libc is much more valuable and less negotiable and less problematic than dynamic linking to m3core. <span style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">Some
platforms have no public stable syscall interface, except via thin layer in libc, so dynamic linking is required. e.g. Darwin and Solaris I believe, and NT. Libc versioning/compatbility is also generally pretty good.</span></div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
I was really only asking about m3core, etc., not libc.</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
- Jay</div>
<div>
<div id="a425efc80773e5a6193e5756ee721c9ex_f57e443edba66501a9619cfdb2106aedx_x_appendonsend"></div>
<div style="color:rgb( 0 , 0 , 0 );font-family:'calibri' , 'helvetica' , sans-serif;font-size:12pt">
<br />
</div>
<hr style="display:inline-block;width:98%" />
<div id="96629e8a1ec1e383f0d450f38b21a0c6x_4825e962c42d624a5fbdbfce559af492x_x_divRplyFwdMsg" dir="ltr"><font color="#000000" face="Calibri, sans-serif" style="font-size:11pt"><b>From:</b> Tony Hosking <<a href="mailto:antony.hosking@anu.edu.au" target="_blank">antony.hosking@anu.edu.au</a>><br />
<b>Sent:</b> Thursday, June 24, 2021 7:40 AM<br />
<b>To:</b> Jay K <<a href="mailto:jayk123@hotmail.com" target="_blank">jayk123@hotmail.com</a>>; m3devel <<a href="mailto:m3devel@elegosoft.com" target="_blank">m3devel@elegosoft.com</a>><br />
<b>Subject:</b> Re: dropping dynamic linking?</font>
<div> </div>
</div>
<div lang="EN-US" style="word-wrap:break-word">
<div class="79d901a6965677044a1d4a5082870eedx_1c16767b9cb436f9767a29c795fef5a8x_x_x_WordSection1">
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in">
Dropping dynamic linking is a non-starter. It must be supported!</p>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in">
</p>
<div style="border-style:solid none none none;border-top-color:#b5c4df;border-width:1pt medium medium medium;padding:3pt 0in 0in 0in">
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 12pt 0.5in">
<b><span style="color:black;font-size:12pt">From: </span></b><span style="color:black;font-size:12pt">M3devel <<a href="mailto:m3devel-bounces@elegosoft.com" target="_blank">m3devel-bounces@elegosoft.com</a>> on behalf of Jay K <<a href="mailto:jayk123@hotmail.com" target="_blank">jayk123@hotmail.com</a>><br />
<b>Date: </b>Thursday, June 24, 2021 at 2:22 PM<br />
<b>To: </b>m3devel <<a href="mailto:m3devel@elegosoft.com" target="_blank">m3devel@elegosoft.com</a>><br />
<b>Subject: </b>[M3devel] dropping dynamic linking?</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt">I am curious, if anyone would mind much, if we stopped doing dynamically linking, of Modula-3 code itself.</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt"> </span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt">I am very well aware of all the tradeoffs.</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt">Dynamic linking saves diskspace and memory when code is actually shared.</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt">There is some indirection, but it <b>should</b> not be much. But ELF defaults are also terrible.</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt"> </span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt">The Modula-3 build system has a fair amount of code to support dynamic linking.</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt">Is it worth maintaining?</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt"> </span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt">We would continue dynamically linking to the underlying OS.</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt"> </span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt">The Go developers seem to have a blanket policy/implementation of static linking (to go code, not OS).</span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt"> </span></p>
</div>
<div>
<p class="6530363828e8026aa38fe1c4ffb31986x_65f625891341662a9d56054c9dd443f2x_x_x_MsoNormal" style="font-family:'calibri' , sans-serif;font-size:11pt;margin:0in 0in 0in 0.5in">
<span style="color:black;font-size:12pt"> - Jay</span></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
,
<p style="margin-bottom:0;margin-top:0">_______________________________________________<br />
M3devel mailing list<br />
<a href="mailto:M3devel@elegosoft.com" target="_blank">M3devel@elegosoft.com</a><br />
<a href="https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fm3lists.elegosoft.com%2Fmailman%2Flistinfo%2Fm3devel&data=04%7C01%7C%7C48a1f1bcd906438437b308d9d2905c9c%7C84df9e7fe9f640afb435aaaaaaaaaaaa%7C1%7C0%7C637772339743489990%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=GAY%2BxpqzDGoqzuvvfXRGGITX%2Bb%2BZN80IqgQuGmXS63s%3D&reserved=0" target="_blank">https://m3lists.elegosoft.com/mailman/listinfo/m3devel</a><br />
</p>
</blockquote>
</div>
</div>
</div>
</blockquote>