In message <20030609165612.GE32450@rembrandt.csv.ica.uni-stuttgart.de> you
wrote:
> Baruch Chaikin wrote:
> > Hi all,
> >
> > I'm using MIPS kernel 2.4.18 with NFS file system mounted on a RedHat
> > machine. This works fine, but is unsuitable for system deployment. Do
> > you have hints for me where to start, in order to put the file system on
> > flash? The platform I'm using is very limited - only one MTD block of
> > 2.5 MB is available for the file system, out of a 4 MB flash:
> > 0.5 MB is allocated for the firmware code
> > 1.0 MB for the compressed kernel image
> > 2.5 MB for the (compressed?) file system
> >
> > For example, I've noticed LibC itself is ~5 MB !
>
> You'll need a smaller libc, dietlibc comes to mind.
> http://www.dietlibc.org/
I don't really understand what all this discussion is about.
2.5 MB is plenty of space for a compressed ramdisk image using the
standard C library. The ramdisk image included with our ELDK is 1.3
MB:
-> ls -l /opt/eldk/mips_4KC/images/ramdisk_image.gz
-rw-r--r-- 1 root root 1370532 Mar 18 18:09
/opt/eldk/mips_4KC/images/ram
It is based on Busybox, but also includes standard login with PAM
support, xinetd plus telnet and FTP.
Yes, libc _is_ big. But 5 MB is wrong. Remember that you can strip
the library for the starget system. In our ramdisk image we get:
# ls -l lib | grep -v '^[ld]'
total 2433
-rwxr-xr-x 1 root root 97308 Jan 1 1970 ld-2.2.5.so
-rwxr-xr-x 1 root root 1448336 Jan 1 1970 libc-2.2.5.so
-rwxr-xr-x 1 root root 28544 Jan 1 1970 libcrypt-2.2.5.so
-rwxr-xr-x 1 root root 14204 Jan 1 1970 libdl-2.2.5.so
-rwxr-xr-x 1 root root 515740 Jan 1 1970 libm-2.2.5.so
-rwxr-xr-x 1 root root 99156 Jan 1 1970 libnsl-2.2.5.so
-rwxr-xr-x 1 root root 62132 Jan 1 1970 libnss_compat-2.2.5.so
-rwxr-xr-x 1 root root 56376 Jan 1 1970 libnss_files-2.2.5.so
-rwxr-xr-x 1 root root 40897 Jan 1 1970 libpam.so.0.75
-rwxr-xr-x 1 root root 13886 Jan 1 1970 libpam_misc.so.0.75
-rwxr-xr-x 1 root root 75068 Jan 1 1970 libresolv-2.2.5.so
-rwxr-xr-x 1 root root 12788 Jan 1 1970 libutil-2.2.5.so
So just use the standard libraries - it will fit easily.
Best regards,
Wolfgang Denk
--
Software Engineering: Embedded and Realtime Systems, Embedded Linux
Phone: (+49)-8142-4596-87 Fax: (+49)-8142-4596-88 Email: wd@denx.de
Hindsight is an exact science.
|