Submitter | Cristi Magherusan |
---|---|
Date | 2009-10-02 03:49:30 |
Message ID | <1254455370.28556.31.camel@ufo> |
Download | mbox | patch |
Permalink | /patch/322/ |
State | Superseded |
Headers | show |
Comments
This might work but you're probably better off building with the cross tools I expect. ron
On Thu, 2009-10-01 at 21:03 -0700, ron minnich wrote: > This might work but you're probably better off building with the cross > tools I expect. > > ron Yes, maybe those work better, but the problem with them is that there's no uniform name across distributions. My approach needs the 32bit toolchain to be installed on x86-64, with no assumption on the cross-prefix of the binaries, but the toolchain must support multilib in order for it to work. Cristi
On 10/02/2009 12:40 AM, Cristi Magherusan wrote: > On Thu, 2009-10-01 at 21:03 -0700, ron minnich wrote: >> This might work but you're probably better off building with the cross >> tools I expect. >> >> ron > Yes, maybe those work better, but the problem with them is that there's > no uniform name across distributions. > > My approach needs the 32bit toolchain to be installed on x86-64, with no > assumption on the cross-prefix of the binaries, but the toolchain must > support multilib in order for it to work. > Thanks Cristi I will try your patch. I don't know if it makes a difference but I am running Fedora Core 11, and I already have the libelf and binutils packages installed, that is why I am a bit surprised. Did Fedora put the elf cross building tools in a different package on fc11?
On Fri, 2009-10-02 at 06:19 -0400, Joseph Smith wrote: > On 10/02/2009 12:40 AM, Cristi Magherusan wrote: > > On Thu, 2009-10-01 at 21:03 -0700, ron minnich wrote: > >> This might work but you're probably better off building with the cross > >> tools I expect. > >> > >> ron > > Yes, maybe those work better, but the problem with them is that there's > > no uniform name across distributions. > > > > My approach needs the 32bit toolchain to be installed on x86-64, with no > > assumption on the cross-prefix of the binaries, but the toolchain must > > support multilib in order for it to work. > > > Thanks Cristi I will try your patch. I don't know if it makes a > difference but I am running Fedora Core 11, and I already have the > libelf and binutils packages installed, that is why I am a bit > surprised. Did Fedora put the elf cross building tools in a different > package on fc11? > No idea, but my Ubuntu also had issues with the tools. I guess the makefile was first written on Suse so there it may be work out of the box. Cristi
On 10/01/2009 11:49 PM, Cristi Magherusan wrote: > On Thu, 2009-10-01 at 22:11 -0400, Joseph Smith wrote: >> [root@smitty5m SerialICE-1.0]# make >> gcc -O2 -Wall -o romcc util/romcc.c >> util/romcc.c: In function ‘simplify_load’: >> util/romcc.c:9925: warning: dereferencing type-punned pointer will break >> strict-aliasing rules >> util/romcc.c:9926: warning: dereferencing type-punned pointer will break >> strict-aliasing rules >> util/romcc.c:9927: warning: dereferencing type-punned pointer will break >> strict-aliasing rules >> util/romcc.c: In function ‘get_const_pool_ref’: >> util/romcc.c:23846: warning: format ‘%ld’ expects type ‘long int’, but >> argument 3 has type ‘size_t’ >> util/romcc.c:23851: warning: format ‘%ld’ expects type ‘long int’, but >> argument 3 has type ‘size_t’ >> util/romcc.c: In function ‘print_sdecl’: >> util/romcc.c:24660: warning: format ‘%ld’ expects type ‘long int’, but >> argument 3 has type ‘size_t’ >> ./romcc -mcpu=i386 -I. -Imainboard -o serialice.S serialice.c >> i386-elf-as -o serialice.o serialice.S >> make: i386-elf-as: Command not found >> make: *** [serialice.o] Error 127 >> >> Any ideas? > Try the attached patch > > Signed-off-by: Cristi Măgherușan<cristi.magherusan@net.utcluj.ro> > > Regards, > Cristi > > Hmm Cristi, now with your patch I'm getting: [joe@smitty5m SerialICE-1.0]$ make gcc -O2 -Wall -o romcc util/romcc.c util/romcc.c: In function ‘simplify_load’: util/romcc.c:9925: warning: dereferencing type-punned pointer will break strict-aliasing rules util/romcc.c:9926: warning: dereferencing type-punned pointer will break strict-aliasing rules util/romcc.c:9927: warning: dereferencing type-punned pointer will break strict-aliasing rules util/romcc.c: In function ‘get_const_pool_ref’: util/romcc.c:23846: warning: format ‘%ld’ expects type ‘long int’, but argument 3 has type ‘size_t’ util/romcc.c:23851: warning: format ‘%ld’ expects type ‘long int’, but argument 3 has type ‘size_t’ util/romcc.c: In function ‘print_sdecl’: util/romcc.c:24660: warning: format ‘%ld’ expects type ‘long int’, but argument 3 has type ‘size_t’ ./romcc -mcpu=i386 -I. -Imainboard -o serialice.S serialice.c as --32 -o serialice.o serialice.o.s Assembler messages: Error: can't open serialice.o.s for reading: No such file or directory make: *** [serialice.o] Error 1
Patch
diff -Naur /tmp/SerialICE-1.2/Makefile ./Makefile --- /tmp/SerialICE-1.2/Makefile 2009-10-02 02:59:01.000000000 +0300 +++ ./Makefile 2009-10-02 06:44:04.000000000 +0300 @@ -23,13 +23,12 @@ HOSTCFLAGS= -O2 -Wall PCREFLAGS=-I/opt/local/include -L/opt/local/lib -lpcre -CROSS=i386-elf- -AS=$(CROSS)as -CC=$(CROSS)gcc -OBJCOPY=$(CROSS)objcopy -NM=$(CROSS)nm +AS=as +CC=gcc +OBJCOPY=objcopy +NM=nm -LDFLAGS=-Wa,--divide -nostdlib -nostartfiles -static -T serialice.ld +LDFLAGS = --32 -Wa,--divide -nostdlib -nostartfiles -static -T serialice.ld SOURCES = serialice.c chipset.c config.h serial.c types.h mainboard/*.c @@ -58,7 +57,7 @@ $(NM) $@ | sort -u > serialice-gcc.map serialice-pre.s: $(SOURCES) ./xmmstack - $(CC) -I. -Imainboard -fomit-frame-pointer -fno-stack-protector -DVERSION=\"$(VERSION)\" -S $< -o serialice-pre.s + $(CC) --32 -I. -Imainboard -fomit-frame-pointer -fno-stack-protector -DVERSION=\"$(VERSION)\" -S $< -o serialice-pre.s serialice-gcc.S: serialice-pre.s ./xmmstack serialice-pre.s @@ -79,4 +78,4 @@ %.o: %.S $(CPP) -DVERSION=\"$(VERSION)\" -o $@.s $^ - $(AS) -o $@ $@.s + $(AS) --32 -o $@ $@.s