<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">That otool command told me what was wrong:<div class=""><br class=""></div><div class=""><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class="">libmpfr.6.dylib:</span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""><span class="Apple-tab-span" style="white-space: pre;">      </span>/opt/local/lib/libmpfr.6.dylib (compatibility version 7.0.0, current version 7.2.0)</span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""><span class="Apple-tab-span" style="white-space: pre;">   </span>/opt/local/lib/libgmp.10.dylib (compatibility version 15.0.0, current version 15.0.0)</span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""><span class="Apple-tab-span" style="white-space: pre;"> </span>/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1281.100.1)</span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""><br class=""></span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class="">Macports hardcodes the directory that the lib will run in and the directory that it looks for the external dylib in.</span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""><br class=""></span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class="">I might be able to coerce Squeak to execute libmpfr.6.dylib to execute in the Resources directory, but the external lib MUST be in the original directory anyway.</span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""><br class=""></span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class="">My xcode-fu isn’t at the level (at all) to grab the source and compile it with options that redirect everything to work in the Resources directory, so’ll I need to use Craig Latta’s solution of pointing the directory path to the right library directory rather than the easier thing of copying the libraries into the Resources directory.</span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""><br class=""></span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""><br class=""></span></div><div style="margin: 0px; font-stretch: normal; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class="">L</span></div><div><br class=""><blockquote type="cite" class=""><div class="">On Aug 13, 2020, at 4:35 AM, Tobias Pape <<a href="mailto:Das.Linux@gmx.de" class="">Das.Linux@gmx.de</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="">Hi<br class=""><br class=""><blockquote type="cite" class="">On 13.08.2020, at 13:21, Marcel Taeumel <<a href="mailto:marcel.taeumel@hpi.de" class="">marcel.taeumel@hpi.de</a>> wrote:<br class=""><br class="">Hi Lawson.<br class=""><br class=""><blockquote type="cite" class=""> I think: the mpfr library uses the gmp library. So how does one do THAT with squeak?<br class=""></blockquote><br class="">You don't. Your operating system does that for you. Well, the same lookup rules for that dependent library apply, I suppose. Do you have the gmp library installed in your system?<br class=""><br class="">Yes, not having all dependent libraries does raise that "external module not found" error, too. It can be confusing.<br class=""><br class="">Working with FFI requires knowledge about working with shared libraries in your operating system. It's one of those "leaky abstractions" where Squeak is -- understandably -- not able to hold your hand for all kinds of configurations out there. :-)<br class=""><br class="">You can try using a debug-build VM, which produces a more descriptive error log.<br class=""></blockquote><br class="">also, try 'otool -L ' on the library you are trying to load.<br class=""><br class=""><blockquote type="cite" class=""><br class="">Best,<br class="">Marcel<br class=""><blockquote type="cite" class="">Am 13.08.2020 12:11:53 schrieb LawsonEnglish <<a href="mailto:lenglish5@cox.net" class="">lenglish5@cox.net</a>>:<br class=""><br class="">So I tested a simple mandelbrot set rendering algorithm using the ArbitraryPrecisionFloat package and it works just fine, but terribly slowly.<br class=""><br class="">So I had the idea of using mpfr via FFI and find that I can’t even begin.<br class=""></blockquote></blockquote><br class="">How did you install mpfr?<br class=""><br class=""><blockquote type="cite" class=""><blockquote type="cite" class=""><br class="">I’m getting the dreaded External module not found error and just can’t get rid of it.<br class=""><br class="">I thought I was taking the easy route and simply copying the mpfr library into the Squeak all-in-one Resources directory but no matter what I try, that error pops up.<br class=""><br class=""><br class="">initPrecision: aDefaultPrecision<br class="">“initialize default precision"<br class=""><br class=""><br class="">^self externalCallFailed <br class=""><br class="">This is roughly the “hello world” of using mpfr, I thought, but can’t even do that.<br class=""><br class="">Now, waiting in the wings is a bigger problem, I think: the mpfr library uses the gmp library. So how does one do THAT with squeak? Compile both libraries into a single target? (yikes!).<br class=""><br class="">That might be an issue later on, but the impression I’m getting is that squeak simply can’t find libmpfr.6.dylib, so errors that result from calling a second library from the first haven’t even popped up yet.<br class=""><br class=""><br class="">Squeak5.3-19435-64bit, Mac OS X 10.15.6<br class=""></blockquote></blockquote><br class="">Note that MacOS changes rapidly these days and we might simply have not catched up with the newest nonsense of Apple . . .<br class=""><br class="">Best regards<br class=""><span class="Apple-tab-span" style="white-space:pre">      </span>-Tobias<br class=""><br class=""><br class=""><br class=""><blockquote type="cite" class=""><blockquote type="cite" class=""><br class=""><br class="">Thanks <br class=""><br class=""><br class="">Lawson<br class=""><br class=""></blockquote><br class=""></blockquote><br class=""><br class=""><br class=""></div></div></blockquote></div><br class=""></div></body></html>