GCC 6.2 toolchain for AmigaOS 3
https://github.com/bebbo has ported cross-compiler toolchains for Windows, Linux and Mac OS. I have not tried them yet but it's a very recent version of GCC.
|
Nice! Finally a more recent version of GCC. I'll give it a go! :)
|
Excellent work :)
I tend to use vbcc thesedays but this is good. |
I tried to build this last week. Run into a couple of problems I couldn't solve.
I made some notes, which I was intending to post after I got everything working: 1. The page has: # git clone git://github.com/cahirwpz/amigaos-cross-toolchain.git But this should be: # git clone git://github.com/bebbo/amigaos-cross-toolchain.git otherwise you will build gcc 2.95 like me :-) 2. You are going to need 32bit gcc and libs (anyone know why?). Didn't keep all my notes but I needed at least these: sudo apt-get install libgmp-dev:i386 libmpfr-dev:i386 libmpc-dev:i386 gcc-multilib g++-multilib 3. Don't forget the "--gcc 6" parameter! It says it right at the top of the page but wasn't obvious to me. 4. You need a github account with a ssh key! I think this is because the scripts use ssh:// instead of https:// (which shouldn't be necessary for a RO checkout). You can add a key here: https://github.com/settings/ssh After all this I get 2 errors. Code:
/usr/bin/install: cannot create regular file '/home/paul/source/gcc6.2/amigaos-cross-toolchain/.build-m68k/host/man/man1/flex.1': No such file or directory GCC actually builds OK but libnix fails. submodules/libnix/sources/stubs/../nix/misc/__request.c Code:
toolchain/submodules/libnix/sources/stubs/../headers -O3 -fomit-frame-pointer -c /home/paul/source/gcc6.2/amigaos-cross-toolchain/submodules/libnix/sources/stubs/../nix/misc/__request.c -o ../nix/misc/__request.o Building under Debian Linux VM. Cahirwpz's GCC 2.95 builds correctly. Would love to know if anyone else has similar issues. |
Quote:
EDIT: On Debian too. EDIT2: Going to try on macOS Sierra next. |
Seems to be a problem with the inlines or protos:
Code:
#include <proto/dos.h> Code:
In file included from /opt/m68k-amigaos/os-include/inline/dos.h:16:0, Code:
void test() |
This is from gcc3.4.0
Code:
void test() Interestingly enough, the 6.x says that a0,a1 are clobbered and 3.x does not. |
Tested 2.95 vs 6.20 and they both produce identical code for the Open() wrapper.
I wonder if fd2sfd needs work? I don't think Debian is an issue but I will spin up a 32bit Ubuntu VM just in case. The compiler is working but OS support would be useful :-) |
Mac has the same issue, so I doubt it's the OS. Would be nice if we could get the author to this thread so he's aware.
|
I've emailed Steffan and invited him to this thread.
|
Quote:
Quote:
Quote:
Quote:
... committed it without testing 2.93. Then the libnix will build partially. Relative code is not yet working. |
I also enabled the "github issues" ticket tracking.
|
Quote:
|
The latest commits made it go much further for me on Debian!
EDIT: I do get a lot of these: Code:
m68k-amigaos-gcc: error: ../nix/stdio/vsscanf.S: No such file or directory Code:
m68k-amigaos-gcc: error: extra/dirent.S: No such file or directory Code:
m68k-amigaos-gcc: error: socket/__initsock.S: No such file or directory Code:
m68k-amigaos-gcc: error: unrecognized command line option '-fbaserel'; did you mean '-fassert'? |
Quote:
As long you are not using the -fbaserel option you should be able to compile and link Amiga executables now. |
Quote:
I don't feel like the whole toolchain has successfully been compiled though, and I get funky stuff like this when trying to compile the example files that did compile with gcc-2 Code:
amigaos-cross-toolchain/examples$ make |
No one said it's a release version.
If I have time I'll continue working on building libnix without errors. |
Thanks Bebbo :-) I didn't realise you are on this board. I will have a play.
|
Quote:
|
Late home today due to a train drivers strike in Southern England. 2 hours to get home from work :-(
This seems to be the cause of the problems. Error: Unknown pseudo-op: `.section' Confirmed that m68k-amigaos-as does not support .section Example: Code:
paul@debian:cd ~/source/gcc6.2/amigaos-cross-toolchain/submodules/libnix/sources/stubs/stubs Thanks for the great work Bebbo, we appreciate it :-) |
All times are GMT +2. The time now is 03:03. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.