Xojo 2018r4 on a M1 Mac

I’m thinking about switching to a M1 Mac.
However, there are a couple of Xojo projects (Desktop, Console - no Web or iOS) still being compiled with 2018r4.
2018r4 needs a “patch” in order to run on recent macOS. But… will that work on a M1 Mac, too? Is it possible to compile macOS (Intel, 64Bit) desktop/console applications with 2018r4 on a M1 Mac?

I know - an uncommon situation… and I can’t try myself since I don’t have such a Mac (yet).
If someone knows, does exactly that - or could give it a try - then thanks for letting me know.

I can download 2018r4 and try running / building something for you?

2 Likes

Just downloaded 2018r4 and added a RadioButton and PushButton to the layout. Run the desktop application and got the following error message:

Linking Executable
ld: file not found: /System/Library/PrivateFrameworks/UIFoundation.framework/Versions/A/UIFoundation for architecture x86_64

Looking at the macOS settings shows that Arm target is not available on that version. Build has the same result.

That is expected and needs the “patch”: Big Sur and Xojo 2019r1.1

Then running and building works on Intel Macs.
So I’m curious about what happens on a M1 Mac…

I’ve copied the files and it reports that Xojo is damaged and wants to move it to the Bin (Trash). I suspect because I’ve broken the signature.

I’ve looked in the system preferences / Security panel and it doesn’t offer a Run Anyway option. I think the M1 versions are much stricter than Intel versions. Happy to try further.

OK, as per a PM from AlbertoD, I:

  • Download Xojo 2018r4.
  • Installed it into applications
  • Run it
  • Quit it
  • Copied the files from 2019r3.2

I was then able to start up 2018r4 and add a radio button and button and run the application successfully.
There was no code in the application but it did run without errors.

I tried a console application with no code at all and got the following error in the console:

dyld[7870]: Library not loaded: '@rpath/rbframework.dylib'
  Referenced from: '/private/var/folders/ww/j1dhx_ks3hn6zqtcgsjbgvbr0000gr/T/TemporaryItems/test.debug/test.debug'
  Reason: tried: '/private/var/folders/ww/j1dhx_ks3hn6zqtcgsjbgvbr0000gr/T/TemporaryItems/test.debug/test.debug Libs/rbframework.dylib' (file system sandbox blocked open()), '/private/var/folders/ww/j1dhx_ks3hn6zqtcgsjbgvbr0000gr/T/TemporaryItems/test.debug/test.debug Libs/rbframework.dylib' (file system sandbox blocked open()), '/usr/local/lib/rbframework.dylib' (no such file), '/usr/lib/rbframework.dylib' (no such file)
Abort trap: 6
2 Likes

Happy to try other options if it helps. Feel free to provide same code via pm or email. I’m happy to destroy afterwards.

don’t know what prevents you from using a recent xojo version, but the migration to the apple silicon is on the way, and it is urgent to move your apps from this 2018 compiled world…
I know many people (like me) are still using xojo2019r11 because of the difficult move to API2, but may be you could use 2019r11 better than 2018r4 ?

Nothing.
It’s just some (internal) legacy projects (that will continue to run on Intel Macs) that might need a fix or two.
And I’m trying to figure out if we could build all we do on a M1 mac - with both current Xojo Versions and some builds withs old versions.

That shouldn’t make much of a difference.

Thanks for the (good) news.

Looks like that’s because 2018r4 doesn’t do CodeSigning.
In the best case, the built executable is ok to work on an Intel Mac.

Thanks. I think that’s good enough for now.
It seems that it would be possible, but honestly I don’t think it’s the best idea.
Should I really want (or have to) do this, quite some testing needed.
But at least - it doesn’t seem to be impossible. That’s all I wanted to check out before trying to get my hands on a M1 Mac.

No problem.