Quote Originally Posted by nagybal View Post
I received this reply on their forums:
With x64 the CPU architecture, yes, it's basically a superset of IA-32, so you can run 32-bit and 16-bit i386 code on it. With libraries built for x64, no, you cannot run 32-bit or 16-bit with them, it's ABI-incompatible (e.g. pointers have different sizes).
That's why, even on Linux, if you want to run 32-bit software, you have to install a separate set of libraries. For example, on my system here, I have both /usr/lib/libc-2.29.so and /usr/lib64/libc-2.29.so. We need to build the same for Darling, except it ends up in a one .dylib file consisting of multiple (in this case two) of sub-Mach-Os for different architectures.
Nothing new here.
Just saying... If your situation won't require 32-bit support, why bother with 32-bit compatibility? The x86-64 build should support everything you'd want to do on an x64 system, so that should be your build target.

The i386 target is a very early architecture, one can almost consider an ancient ancestor of i586, i686 and x64, so could be thought of the common root from which its descendants sprang... So, I can see that if that's all someone would want to support both 32-bit and 64-bit it could be considered but according to the errors in your posted log isn't a forced "only" option.

Ask Darling support how to re-configure for x86-64 and your problems will likely be solved.

TSU