View Single Post
Old 08 January 2017, 18:40   #4
nogginthenog
Amigan
 
Join Date: Feb 2012
Location: London
Posts: 1,311
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
Makefile:180: recipe for target 'install.man' failed
It's not a rights issue. If I build a second time it continues...

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
In file included from /opt/m68k-amigaos/os-include/inline/intuition.h:16:0,
                 from /opt/m68k-amigaos/os-include/proto/intuition.h:13,
                 from /home/paul/source/gcc6.2/amigaos-cross-toolchain/submodules/libnix/sources/stubs/../nix/misc/__request.c:2:
/home/paul/source/gcc6.2/amigaos-cross-toolchain/submodules/libnix/sources/stubs/../nix/misc/__request.c: In function ‘__request’:
/home/paul/source/gcc6.2/amigaos-cross-toolchain/submodules/libnix/sources/stubs/../nix/misc/__request.c:13:26: error: invalid use of void expression
   if (((struct Process *)FindTask(NULL))->pr_WindowPtr != (APTR)-1L) {
                          ^
/home/paul/source/gcc6.2/amigaos-cross-toolchain/submodules/libnix/sources/stubs/../nix/misc/__request.c:14:23: error: void value not ignored as it ought to be
     if ((IntuitionBase=OpenLibrary(__intuitionname,0))) {
                       ^
Looks like OS calls are defined as returning void? If I hack around this the next file fails.

Building under Debian Linux VM. Cahirwpz's GCC 2.95 builds correctly.
Would love to know if anyone else has similar issues.

Last edited by nogginthenog; 09 January 2017 at 17:20.
nogginthenog is offline  
 
Page generated in 0.06603 seconds with 11 queries