I need to compile it statically to use in the "initial ramdisk", and I think previously I used uClibc. This time I used Dietlibc as we have that in the 'devx' file. However, I had to jump through a few hoops to get there, as documented here:
edit first two lines of Makefile:
CC = diet gcc -nostdinc
CFLAGS = -W -Wall -Os -static
compile needs this:
# cd /usr/lib/diet
# ln -s lib lib-i386
# cp /usr/include/error.h /usr/inlude/diet/
In linux_fs.h insert this at beginning:
typedef unsigned char u_char; /*BK*/
In guess_fstype.c insert this at beginning:
typedef unsigned int uint; /*BK*/
Now it compiles:
# make guess_fstype
But, gives this warning:
guess_fstype.c: In function 'do_guess_fstype':
guess_fstype.c:354: warning: array subscript is above array bounds
Interesting that I get an executable of 21KB, whereas the previous one (compiled in uClibc I think) is 26KB. Note also the warning message.
Jesse sent me a p.m. about a problem with the kernel and ext4. When mounting a ext4 filesystem in alpha4 there is an error:
EXT4-fs: sdb1: Filesystem with huge files cannot be mounted read-write without CONFIG_LBD
This needs "large file support" enabled in the kernel. I have made a note of that for the next kernel compile.
The PET package that has Jesse's latest guess_fstype is 'guess_fs-20090512.pet'. The utility is also at /bin/guess_fstype in the initial ramdisk.
Comments:Posted on 18 May 2009, 12:06 by dogone
fsck output w/pfix=fsck
If it would a very easy thing to do, can Puppy please display fsck [-f] output when pfix=fsck is invoked? The switch is used only when a user has a reason to be concerned, so she deserve explicit feedback and a thorough test (-f switch).
It's just one of those "feel good" things.