J
James Harris
Help! I've written a fair amount of C code over the years and always
interfaced it with other C. Now I'm looking to interface it with non-C
code I'm struggling to find a compiler to do what I want. I'm looking
for a compiler with these qualities:
* to compile standard, portable, C to object code
* simple object file output (not linked)
* Intel-format 32-bit asm output would be good
* selectable subroutine linkage options (calling conventions)
* simple demands on the OS so relatively easily ported to another OS
* works under various environments - Dos, Unix, Windows (without
Cygwin etc)
* reasonably effective at optimisation
and *above all*, a compiler that gets in the way as little as
possible. It should not compile for a certain target OS but merely
produce simple, lean, unencumbered, OS-agnostic object code, i.e.
object code that does just what the source code says and nothing more.
I'll generally link the object files together myself so a standard and
simple object format would be useful. I know most about Elf so that
would be ideal but not essential.
I've tried Open Watcom and gcc so far. Open Watcom is great at
providing different calling convention options but both Dos and
Windows versions have far too much mechanism surrounding them for my
liking and I can't get them to produce asm output. gcc is good on Unix
but looks very complex to port and I think it needs Cygwin on Windows.
In searching around I came across lcc and lcc-win. Remembering Jacob
posts here make me think about asking on this newsgroup. I hope the
query is just about close enough to being on topic! Any suggestions -
even partial matches to the list above - would be appreciated.
TIA,
James
interfaced it with other C. Now I'm looking to interface it with non-C
code I'm struggling to find a compiler to do what I want. I'm looking
for a compiler with these qualities:
* to compile standard, portable, C to object code
* simple object file output (not linked)
* Intel-format 32-bit asm output would be good
* selectable subroutine linkage options (calling conventions)
* simple demands on the OS so relatively easily ported to another OS
* works under various environments - Dos, Unix, Windows (without
Cygwin etc)
* reasonably effective at optimisation
and *above all*, a compiler that gets in the way as little as
possible. It should not compile for a certain target OS but merely
produce simple, lean, unencumbered, OS-agnostic object code, i.e.
object code that does just what the source code says and nothing more.
I'll generally link the object files together myself so a standard and
simple object format would be useful. I know most about Elf so that
would be ideal but not essential.
I've tried Open Watcom and gcc so far. Open Watcom is great at
providing different calling convention options but both Dos and
Windows versions have far too much mechanism surrounding them for my
liking and I can't get them to produce asm output. gcc is good on Unix
but looks very complex to port and I think it needs Cygwin on Windows.
In searching around I came across lcc and lcc-win. Remembering Jacob
posts here make me think about asking on this newsgroup. I hope the
query is just about close enough to being on topic! Any suggestions -
even partial matches to the list above - would be appreciated.
TIA,
James