Re: wxEuphoria cannot load library even if libwxeu.dll is present in path
- Posted by ghaberek (admin) Mar 06, 2018
- 1595 views
Eu doesn't have machine_bits(), BITS64, or BITS32
What?!
Euphoria 4.1, the only version to provide anything but 32-bit architecture, includes the following in its manual:
Chip architecture:
- X86
- X86_64
- ARM
Size of pointers and euphoria objects. This information can be derived from the chip architecture, but is provided for convenience.
- BITS32
- BITS64
Size of long integers. On Windows, long integers are always 32 bits. On other platforms, long integers are the same size as pointers. This information can also be derived from a combination of other architecture and platform ifdefs, but is provided for convenience.
- LONG32
- LONG64
I always write my architecture ifdef statements as shown below. Doing it this way means the code will always fall back to 32-bit on Euphoria 4.0.
ifdef BITS64 then -- 64-bit Euphoria 4.1 elsedef -- 32-bit Euphoria 4.x end ifdef
Now, you're right that Euphoria doesn't include machine_bits() like Phix, but that's why I linked to the Phix documentation.
Pete provides a specific example (that I copied above) on how to provide machine_bits() in a Phix-compatible way on Euphoria.
-Greg