[Coco] Announcement : Nitros-9 C compiler tool cross chain for Linux
Walter Zambotti
zambotti at iinet.net.au
Tue Apr 28 03:58:37 EDT 2020
Bill
Since my last...
I managed to change cc253 so that it uses the respective Windows calls for making a processes so now all components are compiled and linked.
However c.comp doesn't work at all. I tried debugging it but the code is quite obtuse and beyond my reasoning why it fails.
Hope you have better luck.
I'm using mingw 32. Maybe try Cygwin!
Walter
-----Original Message-----
From: Coco [mailto:coco-bounces at maltedmedia.com] On Behalf Of Walter Zambotti
Sent: Tuesday, 28 April 2020 1:10 PM
To: 'CoCoList for Color Computer Enthusiasts' <coco at maltedmedia.com>
Subject: Re: [Coco] Announcement : Nitros-9 C compiler tool cross chain for Linux
Bill
I managed to get all but cc253 to compile under mingw32 with some changes to the makefiles and some minor changes to the referenced include files.
However mingw does not provide any substitute for:
Fork
Kill
Waitpid
Or
OS9fork
So the runit (run child unit program) function will need to be rewritten.
Walter
-----Original Message-----
From: Coco [mailto:coco-bounces at maltedmedia.com] On Behalf Of Bill Pierce via Coco
Sent: Monday, 27 April 2020 9:39 PM
To: coco at maltedmedia.com
Cc: Bill Pierce <ooogalapasooo at aol.com>
Subject: Re: [Coco] Announcement : Nitros-9 C compiler tool cross chain for Linux
Walter, thanks for the info. I may try creating makefiles for everything like the NitrOS9 repo. This could simplify the process.
-----Original Message-----
From: Walter Zambotti <zambotti at iinet.net.au>
To: coco at maltedmedia.com
Sent: Mon, Apr 27, 2020 9:27 am
Subject: Re: [Coco] Announcement : Nitros-9 C compiler tool cross chain for Linux
Bill
Tip:
There is no overall make file. You'll have to go into the build directory for each component and type make.
Make sure you are using a 32 bit build environment. It simply won't work in 64 bit!
Walter
On 2020-04-27 19:05, Bill Pierce via Coco wrote:
> Walter, I may try that myself as well (compiling under Cygwin or MinGW).
>
>
> -----Original Message-----
> From: Walter Zambotti <zambotti at iinet.net.au>
> To: coco at maltedmedia.com
> Sent: Mon, Apr 27, 2020 7:00 am
> Subject: Re: [Coco] Announcement : Nitros-9 C compiler tool cross
> chain for Linux
>
> Bill
>
> There is a good possibility that it can be compiled under 32 Cygwin or
> MinGW without any modification.
>
> I'll look at that in the next few weeks.
>
> Walter
>
> On 2020-04-27 18:45, Bill Pierce via Coco wrote:
>> That is good news Walter... If we can get a stable C cross compiler that can run along side of the NitrOS9 build tools, it opens MANY doors as to what can be added to the NitrOS9 repository.
>> Now the BIG question (I know it's a bit early, but), will it run under Cygwin & MinGW on a windows machine (as the build tools do)?
>>
>>
>> -----Original Message-----
>> From: Walter Zambotti <zambotti at iinet.net.au>
>> To: CoCoList for Color Computer Enthusiasts <coco at maltedmedia.com>
>> Sent: Mon, Apr 27, 2020 4:01 am
>> Subject: [Coco] Announcement : Nitros-9 C compiler tool cross chain
>> for Linux
>>
>> I managed the get the full C tool chain working.
>>
>> Here is the readme from the github site:
>>
>> https://github.com/WallyZambotti/Nitros9-CC-CrossCompiler
>>
>> Linux CC cross compiler for (CoCo) Nitros-9
>>
>> It contains:
>>
>> - cc2.5.3 : c front end
>> - cprep19 : c preprocessor
>> - c.comp : c compiler
>> - c.opt - (c) rma asm optimizer
>> - rma(r63) - relocating macro assembler
>> - rlink - linker
>> - ansifront - ANSI C to K&R preprocessor
>>
>> It has been successfully compiled and tested on Ubuntu 18.04 (AMD).
>>
>> All Linux binaries produced are 32bit. Some binaries are required to
>> be compiled with no optimization or they will fail. Be warned if you
>> change the make files.
>>
>> It is known to work on Intel (AMD) platforms.
>>
>> This C compiler tools chain produces binaries compatible with:
>>
>> Nitros-9 (MC6809 or HD6309).
>>
>> A test directory is provided that contains a dd directory. You
>> should place the Linux executables in the dd/cmds directory and
>> create a symbolic link from /dd to that directory:
>>
>> $ sudo ln -s ~/Nitros9-CC-CrossCompiler/test/dd /dd
>>
>> And add the cmds directory to your path:
>>
>> $ PATH=$PATH:/dd/cmds
>>
>> Some libraries and defs files are also provided under the test/dd/lib
>> & test/dd/defs directories. You can add more by copying them from a Nitros-9 distribution.
>>
>> You will then be able to compile Nitros-9 C programs with the same
>> instructions as normally used under Nitros-9:
>>
>> $ cc253 -A -s helloworld.c -f=helloworld
>> $ cc253 main.c sub1.c sub2.r mylib.r -f=myprog
>>
>> The provided example in the test directory can be compiled with:
>>
>> $ cc253 -A -s texturebm.c gfxlib.c gpulib.c -f=texturebm
>>
>> (However this example program will only run on the OVCC emulator with
>> the MPU device installed in one of the MPI slots.)
>>
>> When copying the executables to Nitros-9 (either real or emulator)
>> for execution remember to set the execute attributes:
>>
>> $ attr myprogram e pe
>>
>>
--
Coco mailing list
Coco at maltedmedia.com
https://pairlist5.pair.net/mailman/listinfo/coco
--
Coco mailing list
Coco at maltedmedia.com
https://pairlist5.pair.net/mailman/listinfo/coco
--
Coco mailing list
Coco at maltedmedia.com
https://pairlist5.pair.net/mailman/listinfo/coco
More information about the Coco
mailing list