- Suppose they created a native runtime DLL for each system (compiled it natively on each OS) and deliver it with their compiler.
This runtime takes care of all os calls, gui calls, network calls etc; so RealBasic compiled programs cannot talk to the OS directly but always have to go through the OS specific DLLs.
(and RealBasic compiled programs need to have that DLL in order to run)
Now with a cross compiler you just have to link against a library that has all calls for a certain OS specific DLL.
Done.
Now they can call this animal a native program because it is.
This means if somebody comes along and creates a DLL for PureBasic on each OS (Windows, OSX, Linux) that has the OS/GUI functions wrapped-up (similar to the well known GTK-Server DLL) and then in his programs he never uses "native_" OS API functions but always goes through this DLL it should be possible to do it. (given the PureBasic compiler would be a cross compiler

One thing for sure though: the OS specific DLLs would be huge

.