jignesh gangani wrote: > > On 7/25/07, *João Ramos* <[EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]>> wrote: > > Hi. > > I'm following CLFS to make a custom Linux distro, and know I'm > trying to > cross-compile GRUB to finalize my installation, but I'm having some > errors that I cannot fix, and I can't find suitable information to > solve it. > I'm using GRUB-0.97, applied the 'grub-0.97-fixes-1.patch' patch, and > using the toolchain as described by CLFS (gcc-4.1.1). > > This is my configure and make output: > > ----- configure ---------------- > > patching file aclocal.m4 > patching file ChangeLog > patching file configure > patching file configure.ac <http://configure.ac> > patching file docs/grub.8 > patching file docs/grub.texi > patching file docs/multiboot.texi > patching file grub/asmstub.c > patching file grub/main.c > patching file lib/device.c > patching file stage2/asm.S > patching file stage2/boot.c > patching file stage2/builtins.c > patching file stage2/char_io.c > patching file stage2/cmdline.c > patching file stage2/freebsd.h > patching file stage2/graphics.c > patching file stage2/graphics.h > patching file stage2/Makefile.am > patching file stage2/shared.h > patching file stage2/stage2.c > patching file stage2/term.h > patching file THANKS > patching file util/grub-install.in <http://install.in> > configure: WARNING: If you wanted to set the --build type, don't > use --host. > If a cross compiler is detected then cross compile mode will > be used. > checking for a BSD-compatible install... /usr/bin/install -c > checking whether build environment is sane... yes > checking for gawk... gawk > checking whether make sets $(MAKE)... yes > checking for i586-linux-strip... i586-linux-strip > checking build system type... i686-pc-linux-gnulibc1 > checking host system type... i586-pc-linux-gnu > checking whether to enable maintainer-specific portions of > Makefiles... no > checking for i586-linux-gcc... i586-linux-gcc > checking for i586-linux-gcc... (cached) i586-linux-gcc > checking for C compiler default output file name... a.out > checking whether the C compiler works... yes > checking whether we are cross compiling... yes > checking for suffix of executables... > checking for suffix of object files... o > checking whether we are using the GNU C compiler... yes > checking whether i586-linux-gcc accepts -g... yes > checking for i586-linux-gcc option to accept ANSI C... none needed > checking for style of include used by make... GNU > checking dependency style of i586-linux-gcc... gcc3 > checking dependency style of i586-linux-gcc... (cached) gcc3 > checking for i586-linux-ranlib... i586-linux-ranlib > checking whether optimization for size works... yes > checking whether gcc has -fno-stack-protector... yes > checking whether -Wundef works... yes > checking whether -falign-loops works... yes > checking for i586-linux-objcopy... i586-linux-objcopy > checking if C symbols get an underscore after compilation... no > checking whether i586-linux-objcopy works for absolute > addresses... yes > checking whether addr32 must be in the same line as the > instruction... yes > checking for .code16 addr32 assembler support... yes > checking whether an absolute indirect call/jump must not be prefixed > with an asterisk... no > checking if start is defined by the compiler... no > checking if _start is defined by the compiler... yes > checking if __bss_start is defined by the compiler... yes > checking if _edata is defined by the compiler... yes > checking if edata is defined by the compiler... yes > checking if end is defined by the compiler... yes > checking if _end is defined by the compiler... yes > checking for opendisk in -lutil... no > checking for wgetch in -lncurses... yes > checking how to run the C preprocessor... i586-linux-gcc -E > checking for egrep... grep -E > checking for ANSI C header files... yes > checking for sys/types.h... yes > checking for sys/stat.h... yes > checking for stdlib.h... yes > checking for string.h... yes > checking for memory.h... yes > checking for strings.h... yes > checking for inttypes.h... yes > checking for stdint.h... yes > checking for unistd.h... yes > checking for string.h... (cached) yes > checking for strings.h... (cached) yes > checking ncurses/curses.h usability... no > checking ncurses/curses.h presence... no > checking for ncurses/curses.h... no > checking ncurses.h usability... no > checking ncurses.h presence... no > checking for ncurses.h... no > checking curses.h usability... no > checking curses.h presence... no > checking for curses.h... no > configure: creating ./config.status > config.status: creating Makefile > config.status: creating stage1/Makefile > config.status: creating stage2/Makefile > config.status: creating docs/Makefile > config.status: creating lib/Makefile > config.status: creating util/Makefile > config.status: creating grub/Makefile > config.status: creating netboot/Makefile > config.status : creating util/grub-image > config.status: creating util/grub-install > config.status: creating util/grub-md5-crypt > config.status: creating util/grub-terminfo > config.status: creating util/grub-set-default > config.status : creating config.h > config.status: executing depfiles commands > > > ------------- make ---------------------------------- > > make[1]: Entering directory > `/home/joao.ramos/skyguardian/bootldr/grub/grub-0.97 ' > Making all in netboot > make[2]: Entering directory > `/home/joao.ramos/skyguardian/bootldr/grub/grub-0.97/netboot' > if i586-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../stage2 -I../stage1 > -march=i586 -Wall -Wmissing-prototypes -Wunused -Wshadow > -Wpointer-arith > -falign-jumps=1 -falign-loops=1 -falign-functions=1 -Wundef -Os > -fno-stack-protector -fno-builtin -nostdinc -DFSYS_TFTP=1 > -DINCLUDE_EEPRO100=1 -DCONGESTED=1 -DCONFIG_PCI_DIRECT=1 > -DNE_SCAN=0x280,0x300,0x320,0x340 -DWD_DEFAULT_MEM=0xCC000 -g -MT > libdrivers_a-config.o -MD -MP -MF ".deps/libdrivers_a-config.Tpo" > -c -o > libdrivers_a-config.o `test -f 'config.c' || echo './'`config.c; \ > then mv -f ".deps/libdrivers_a-config.Tpo " > ".deps/libdrivers_a-config.Po"; else rm -f > ".deps/libdrivers_a-config.Tpo"; exit 1; fi > if i586-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../stage2 -I../stage1 > -march=i586 -Wall -Wmissing-prototypes -Wunused -Wshadow > -Wpointer-arith > -falign-jumps=1 -falign-loops=1 -falign-functions=1 -Wundef -Os > -fno-stack-protector -fno-builtin -nostdinc -DFSYS_TFTP=1 > -DINCLUDE_EEPRO100=1 -DCONGESTED=1 -DCONFIG_PCI_DIRECT=1 > -DNE_SCAN=0x280,0x300,0x320,0x340 -DWD_DEFAULT_MEM=0xCC000 -g -MT > libdrivers_a-fsys_tftp.o -MD -MP -MF > ".deps/libdrivers_a-fsys_tftp.Tpo" > -c -o libdrivers_a-fsys_tftp.o `test -f 'fsys_tftp.c' || echo > './'`fsys_tftp.c; \ > then mv -f ".deps/libdrivers_a-fsys_tftp.Tpo" > ".deps/libdrivers_a-fsys_tftp.Po"; else rm -f > ".deps/libdrivers_a-fsys_tftp.Tpo"; exit 1; fi > if i586-linux-gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../stage2 -I../stage1 > -march=i586 -Wall -Wmissing-prototypes -Wunused -Wshadow > -Wpointer-arith > -falign-jumps=1 -falign-loops=1 -falign-functions=1 -Wundef -Os > -fno-stack-protector -fno-builtin -nostdinc -DFSYS_TFTP=1 > -DINCLUDE_EEPRO100=1 -DCONGESTED=1 -DCONFIG_PCI_DIRECT=1 > -DNE_SCAN=0x280,0x300,0x320,0x340 -DWD_DEFAULT_MEM=0xCC000 -g -MT > libdrivers_a-main.o -MD -MP -MF ".deps/libdrivers_a-main.Tpo" -c -o > libdrivers_a-main.o `test -f 'main.c' || echo './'`main.c; \ > then mv -f ".deps/libdrivers_a-main.Tpo" > ".deps/libdrivers_a-main.Po"; else rm -f > ".deps/libdrivers_a-main.Tpo"; > exit 1; fi > main.c:57: error: static declaration of 'bootp_data' follows > non-static > declaration > ./etherboot.h:534: error: previous declaration of 'bootp_data' was > here > main.c:59: error: static declaration of 'end_of_rfc1533' follows > non-static declaration > ./etherboot.h:536: error: previous declaration of 'end_of_rfc1533' > was here > main.c: In function 'udp_transmit': > main.c:231: warning: pointer targets in passing argument 1 of > 'eth_transmit' differ in signedness > main.c:276: warning: pointer targets in passing argument 1 of > 'eth_transmit' differ in signedness > main.c:290: warning: pointer targets in passing argument 1 of > 'eth_transmit' differ in signedness > main.c: In function 'tftp': > main.c:462: warning: pointer targets in passing argument 1 of 'fnc' > differ in signedness > main.c: In function 'rarp': > main.c:509: warning: pointer targets in passing argument 1 of > 'eth_transmit' differ in signedness > main.c: In function 'udpchksum': > main.c:729: warning: dereferencing type-punned pointer will break > strict-aliasing rules > main.c: In function 'await_reply': > main.c:893: warning: pointer targets in passing argument 1 of > 'grub_memcmp' differ in signedness > main.c:895: warning: pointer targets in passing argument 1 of > 'grub_memcmp' differ in signedness > main.c:925: warning: pointer targets in passing argument 1 of > 'decode_rfc1533' differ in signedness > main.c: In function 'decode_rfc1533': > main.c:973: warning: pointer targets in passing argument 1 of > 'grub_memcmp' differ in signedness > main.c:973: warning: pointer targets in passing argument 2 of > 'grub_memcmp' differ in signedness > main.c:984: warning: pointer targets in passing argument 1 of > 'grub_memcmp' differ in signedness > main.c:984: warning: pointer targets in passing argument 2 of > 'grub_memcmp' differ in signedness > main.c:1057: warning: pointer targets in passing argument 1 of > 'grub_memcmp' differ in signedness > main.c:1057: warning: pointer targets in passing argument 2 of > 'grub_memcmp' differ in signedness > make[2]: *** [libdrivers_a-main.o] Error 1 > make[2]: Leaving directory > `/home/joao.ramos/skyguardian/bootldr/grub/grub-0.97/netboot' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory > `/home/joao.ramos/skyguardian/bootldr/grub/grub-0.97' > make: *** [all] Error 2 > > > The problem seems to be in a static declaration in netboot/main.c > (static struct bootp_t bootp_data) when the header ' etherboot.h' > defines > this struct as non-static, and without a typedef keyword (struct > bootp_t > { ....... } ). > > Can anyone help? > > Thank you, > > João Ramos > _______________________________________________ > Clfs-support mailing list > [email protected] > <mailto:[email protected]> > http://lists.cross-lfs.org/cgi-bin/mailman/listinfo/clfs-support > <http://lists.cross-lfs.org/cgi-bin/mailman/listinfo/clfs-support> > > > > Hi Joao, > (Sorry for Misspelling your name), > What type of system are your building? You are following CLFS, so > I assume you are building 64-bit ( I may be wrong). If this is the > case then the book suggests that you use LILO over GRUB because GRUB > fails to compile. > This is my only observation. > > Hi Jignesh,
I am building a system for a i586 arch machine, more specifically for an Intel Celeron M single-board computer. My host system is an Intel Pentium 4 @ 3.4GHz, hyper-threading. > -- > > Jignesh D. Gangani > ------------------------------------------------------------------------ > > _______________________________________________ > Clfs-support mailing list > [email protected] > http://lists.cross-lfs.org/cgi-bin/mailman/listinfo/clfs-support > _______________________________________________ Clfs-support mailing list [email protected] http://lists.cross-lfs.org/cgi-bin/mailman/listinfo/clfs-support
