Hello!
Yesterday (or was it 2 days ago, I don't remember!), I reported a bug
related to the glibc 2.91 and the new gcc 2.96. Some changes were made to
grub, and I downloaded it from the cvs (the include order for shared.h was
changed).
I tried to compile this freshly grub, and was stuck with some errors... I
had to change that to be able to compile it further...
diff -u --recursive grub-old/grub/asmstub.c grub/grub/asmstub.c
--- grub-old/grub/asmstub.c Mon Aug 21 02:30:14 2000
+++ grub/grub/asmstub.c Fri Aug 25 10:26:59 2000
@@ -41,6 +41,7 @@
#include <setjmp.h>
#include <sys/time.h>
#include <termios.h>
+#include <curses.h>
#ifdef __linux__
# include <sys/ioctl.h> /* ioctl */
diff -u --recursive grub-old/stage2/char_io.c grub/stage2/char_io.c
--- grub-old/stage2/char_io.c Sun Aug 20 08:14:14 2000
+++ grub/stage2/char_io.c Fri Aug 25 10:14:33 2000
@@ -18,7 +18,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-
+#undef GRUB_UTIL
#include <shared.h>
#ifdef SUPPORT_SERIAL
diff -u --recursive grub-old/stage2/stage2.c grub/stage2/stage2.c
--- grub-old/stage2/stage2.c Sun Aug 20 08:14:14 2000
+++ grub/stage2/stage2.c Fri Aug 25 10:15:19 2000
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
-
+#undef GRUB_UTIL
#include "shared.h"
grub_jmp_buf restart_env;
Sadly, even with these changes, there is another problem when gcc tries to
link the grub utility:
make all-recursive
make[1]: Entering directory `/boot/grub/grub'
Making all in netboot
make[2]: Entering directory `/boot/grub/grub/netboot'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/boot/grub/grub/netboot'
Making all in stage2
make[2]: Entering directory `/boot/grub/grub/stage2'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/boot/grub/grub/stage2'
Making all in stage1
make[2]: Entering directory `/boot/grub/grub/stage1'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/boot/grub/grub/stage1'
Making all in lib
make[2]: Entering directory `/boot/grub/grub/lib'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/boot/grub/grub/lib'
Making all in grub
make[2]: Entering directory `/boot/grub/grub/grub'
gcc -O2 -DGRUB_UTIL=1 -DFSYS_EXT2FS=1 -DFSYS_FAT=1 -DFSYS_FFS=1 -DFSYS_MINIX=1
-DSUPPORT_SERIAL=1 -fwritable-strings -I../stage2 -I../stage1 -I../lib -g -o grub
main.o asmstub.o ../stage2/libgrub.a ../lib/libcommon.a -lncurses
../stage2/libgrub.a(libgrub_a-stage2.o): In function `run_menu':
/boot/grub/grub/stage2/stage2.c:295: undefined reference to `nocursor'
../stage2/libgrub.a(libgrub_a-stage2.o): In function `cmain':
/boot/grub/grub/stage2/stage2.c:722: undefined reference to `grub_setjmp'
collect2: ld returned 1 exit status
make[2]: *** [grub] Error 1
make[2]: Leaving directory `/boot/grub/grub/grub'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/boot/grub/grub'
make: *** [all-recursive-am] Error 2
As usual, I will provide help if you ask me to! Thank you, Mathieu.
--
Mathieu CHOUQUET-STRINGER E-Mail : [EMAIL PROTECTED]
"Entities must not be multiplied beyond necessity"
-- William of Occam --