While compiling etherboot32 in version 4.6.8 I got following error
on Linux RedHat 6.2 (egcs-2.91.66, as 2.9.5)
gcc -E -DMOTD -DIMAGE_MENU -DBACKOFF_LIMIT=7 -DASK_BOOT=3
-DANS_DEFAULT=ANS_NETWORK -O2 -g -fstrength-reduce -fomit-frame-pointer
-m386 -malign-jumps=1 -malign-loops=1 -malign-functions=1 -Wall -W
-Wno-format -Wno-unused -DVERSION=\"4.6.8\" -DRELOC=0x98000 start32.S |
as -o bin32/start32.o
{standard input}: Assembler messages:
{standard input}:323: Error: suffix or operands invalid for `ljmp'
make: *** [bin32/start32.o] Error 1
The problem seem to be the `*' in the LJMPI() macro.
The problem is in the xstart routine. As I saw in the other
parts of the code and the the code 4.6.2, I think, the `*' has
to be removed. In 4.6.2 there was no distinguish between GAS291 and
GAS295 on this line in xstart:
ADDR32 ljmp _execaddr-_start
In 4.6.8 this line:
ADDR32 LJMPI(_execaddr-_start)
with the difference:
#ifdef GAS291
#define DATA32 data32;
#define ADDR32 addr32;
#define LJMPI(x) ljmp x
#else
#define DATA32 data32
#define ADDR32 addr32
#define LJMPI(x) ljmp *x
#endif
Whatfor the `*' here ?
With friendly regards
Christoph P.
PS: Without `*' the code builds, but I have not tested it !
-------------------------------------------------------------------------
private: christoph.plattner@dot.at
company: christoph.plattner@alcatel.at
===========================================================================
This Mail was sent to netboot mailing list by:
Christoph Plattner <christoph.plattner@dot.at>
To get help about this list, send a mail with 'help' as the only string in
it's body to majordomo@baghira.han.de. If you have problems with this list,
send a mail to netboot-owner@baghira.han.de.
For requests or suggestions regarding this mailing list archive please write to netboot@gkminix.han.de.