grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Failed to build grub2


From: Francis Gendreau
Subject: Re: Failed to build grub2
Date: Thu, 27 Dec 2007 01:40:44 -0500

On Wed, 2007-12-26 at 08:15 +0100, Robert Millan wrote:
> On Tue, Dec 25, 2007 at 06:23:13AM -0500, Francis Gendreau wrote:
> > On Tue, 2007-12-25 at 12:07 +0100, Robert Millan wrote:
> > > On Tue, Dec 25, 2007 at 04:41:27AM -0500, Francis Gendreau wrote:
> > > >             GNU assembler 2.15 [FreeBSD] 2004-05-23
> > > > [...]
> > > > gcc -Iboot/i386/pc -I./boot/i386/pc -I. -Iinclude -I./include -Wall -W
> > > > -DASM_FILE=1  -nostdinc -fno-builtin -m32 -MD -c -o
> > > > lnxboot_img-boot_i386_pc_lnxboot.o boot/i386/pc/lnxboot.S
> > > > lnxboot.S: Assembler messages:
> > > > lnxboot.S:49: Error: `0x200+data_start - data_next(%ebx,%eax)' is not a
> > > > valid 16 bit base/index expression
> > > > lnxboot.S:264: Error: `(%esi,%eax)' is not a valid 16 bit base/index
> > > > expression
> > > > lnxboot.S:265: Error: `(%edi,%eax)' is not a valid 16 bit base/index
> > > > expression
> > > > gmake: *** [lnxboot_img-boot_i386_pc_lnxboot.o] Error 1
> > > > 
> > > > I hope someone here may have a clue how to fix the problem. I ignore
> > > > almost everything about the Assembly language.
> > > 
> > > I don't see anything wrong in the code (`(%esi,%eax)' is indeed not a 
> > > valid
> > > 16 bit base/index, but it AFAICT it isn't meant to be).
> > > 
> > > However, your binutils are a bit old.  Perhaps this is a bug they fixed ?
> > > 
> > > Anyway, maybe this solves the problem for you:
> > > 
> > > +       .code32
> > >         leal    0x200 + data_start - data_next(%ebx,%eax), %eax
> > > +       .code16
> > > 
> > > (please report if it does)
> > > 
> > Yes it did, thanks!
> 
> You mean upgrading binutils, or appliing my suggested change?

I was refering to add .code32 before and .code16 after the problematic
lines. The upgrade of binutils on my system will occurs another day.

> > I continue to upgrade my applications, like bison, it seems to misbehave
> > on the normal/parser.y file on '%' character.
> 
> Can you give more details?  Perhaps it'd make sense to work around it.

Well, bison was yelling for every percent character it encountered into
the file. After a google search on the error, I saw people having the
same problem on other unrelated projects. The solution proposed on the
sites was to upgrade bison. I was using bison 1.75, from the ports of
FreeBSD. An upgrade to 2.03 solved the problem.

Curently, the build stage terminate flawlessly. But I am totally unable
to run the check target of the Makefile because I am failing to locate
the proper package/port that provide the m2c program. I tried the Garden
Point Modula-2 compiler which fails to run the tests. Maybe you could
tell me what application I should install on my system so I can have the
m2c binary ?

Francis Gendreau






reply via email to

[Prev in Thread] Current Thread [Next in Thread]