Get compilation working on macOS
Closed this issue · 4 comments
Is your feature request related to a problem? Please describe.
Not so much: the idea is more: get the compilation working on macOS, next to Linux so it becomes easy for more people to join in development of AROS on Vampire. Work done on this would probably also facilitate building on various BSDs.
Describe the solution you'd like
Document/fix/hack so that the repository is buildable on macOS.
Describe alternatives you've considered
Dockerfile-based build, Dedicated linux machines. They are an option of course, but lowest barrier of entry (++ for nice IDE integration) would be to be able to work natively on macOS.
Additional context
My idea is to do the attempt myself. I saw some commits in AROS upstream related to this + I think it would be worthwhile.
I started yesterday night and already identified a few dependencies by running the ./configure line from ./rebuild-all.sh and the follow-up make. Here are the tool dependencies:
wgetgawkgsednetpbmlibxml2tiffjpegliblibpng
The last four items after netpbm are actually dependencies for netpbm, so if someone would be using a package manager instead of compiling from source (like I do) you probably don't have to install those seperately.
Configure line used: ./configure --target=amiga-m68k --with-optimization="-Os" --enable-ccache --with-aros-prefs=classic --with-resolution=640x256x4 --with-cpu=68020 --disable-mmu
I needed to fetch a few dependencies for the cross-compiler-build-stage myself (in bin/Sources) due to certificate verification failures and a 404:
- freetype-2.10.0.tar.gz
- acpica-unix-20190215.tar.gz
Placing the above in bin/Sources worked around that issue.
I can pass the entire configure stage, and early make (all cross-compilation related builds seem to succeed, I.e., I have a working cross-compiler + tools it seems, and quite a few AROS sources seem to compile as expected).
I'm noticing that various stubs (i2c_stubs parallel_stubs serial_stubs storage_stubs hid_stubs usb_stubs) seem to miss -I include options for bin/amiga-m68k/gen/rom/oop/oop/include and bin/amiga-m68k/gen/rom/exec/exec/include
I've just hit autoinit which seems to miss -I's for bin/amiga-m68k/gen/rom/exec/exec/include and bin/amiga-m68k/gen/rom/intuition/intuition/include
I suspect something at configure stage goes awry, but not sure: does this look familiar to anyone? Is it correct that various include directories in bin/amiga-m68k/gen/rom/* should be included so the header files can be found?
I am afraid none of us own a mac. I don't know how we could progress this. I dont know if this can or if it ever did build on a mac. Sadly, until someone with mac skills joins the hunt, we have to close this for now. Sorry about that.
Bebbo website now has cross compile scripts for AROS and ApolloOS that works on Mac.
https://github.com/bebbo/amiga-gcc
With this, after doing a git clone --recursive from this site, you can do the rebuild all.sh to build ApolloOS