From: Michele Andreoli (andreoli@pisoft.it)
Date: Wed Jan 27 1999 - 15:04:53 CET
[MULTI-LINGUAL]
Hi folks,
===================================================================
# df
Filesystem         1024-blocks  Used Available Capacity Mounted on
/dev/ram0               1237    1198       39     97%   /
/dev/ram1               1835    1582      253     86%   /usr
/dev/ram2                987      12      924      1%   /tmp
/dev/ram4               4451    3478      973     78%   /gcc
/dev/ram5               4451    2243     2208     50%   /gcc/usr/include
/dev/ram3               4451    4209      242     95%   /usr/X11R6
/dev/fd0H1722            558     545       13     98%   /startup
/dev/hdb2            1585000 1069876   433193     71%   /mnt
===================================================================
what that? This is from my muLinux console: look at /dev/ram4 and
/dev/ram5 rows: this is the multi-ramdisk GCC 1722k floppy addon!
With this floppy, you puede, mon ami, NON-SOLUM buscar the celebrated 
GCC GNU compiler, SED-ETIAM the "chimera" graphics WWW browser for
X Window (200k).
Now, you can compile your binaries directly from muLinux, 
with libc.so.5, stopping the time flow :)
At this point, the whole muLinux tree is about 13Mega (1478 files),
compressed in 3 incremental floppies 1722k.
On GCC floppy you can find:
1) Celebrated Tools 
--------------------
as 	the portable GNU assembler.
gcc	GNU project C  Compiler (v2.7.0)
cpp	The GNU C-Compatible Compiler Preprocessor
make 	GNU make utility to maintain groups of programs (last version)
ar 	create, modify, and extract from archives.
ld 	the GNU linker
ldd	print shared library dependencies
ldconfig determine run-time link bindings
strip 	 Discard symbols from object files.
compress Compress  reduces  the size of the named files using
        adaptive Lempel-Ziv coding.
flex	fast lexical analyzer generator a tool for generating programs
        that   perform   pattern-matching  on  text.
        (classical "lex" replacement) [last version]
bison	GNU Project parser generator (yacc replacement) [last version]
2) Man pages
------------
        
        TRUES unix-style man page for all this tools, printable
        format.
3) Sources
-----------
        in /gcc/usr/src some source-packages for gcc testing purpose.
        Ex: my g48 (RPN->C translator for HP48G; use  lex&yacc)
4) Libs 
------------------
        libbsd.a      libfl.a       libieee.a     libm.a        libtermcap.a
        libgcc.a
5) Include files (ALL, no cancellation here)
-----------------------
# du -k /usr/include
        usr/include/arpa
2       usr/include/bsd/sys
13      usr/include/bsd
1190    usr/include/linux
6       usr/include/gnu
11      usr/include/i386
5       usr/include/net
16      usr/include/netinet
17      usr/include/protocols
74      usr/include/rpc
91      usr/include/sys
208     usr/include/asm
2243    usr/include
6) Chimera browser
-------------------
        Not so good, but work. Support http:, file:, ftp: and mailto: URL.
        No newsgroup browsing. GiF ok, JPEG no. 
Translator like f2c (FORTRAN-to-C) and qb2c (Quick-Basic to C)
not available yet. I have tryed; my first attempt is failed.
[ITALIAN bla-bla]
Per i mie amici italiani, non occorre che io traduca: siamo un popolo
noto in tutto il mondo per la conoscenza delle lingue, no???
Come si dice, "non c'e' due senza tre": appena ho scoperto che la versione
2.7.0 di gcc (quella corrente e' la 2.7.2) entrava  in un floppy, 
l'ho ricompilata e ve l'ho messa.
Ho dovuto cambiare il "prefix", cioe' la directory dove cerca le
librerie: non in /usr/lib ma in /gcc/usr/lib, altrimenti era impossibile
tenerlo separato.
Come si vede dall'output del comando "df", questo floppy viene scaricato
su DUE ramdisk, invece che uno. E' capitato infatti che, a causa dell'alto
numero di files troppo piccoli (i files .h), un solo disco ram (4M circa)
non fosse sufficiente. Avrei potuto allargare la dimensione standard
dei dischi RAM di Linux, mediante la direttiva ram_disk_size= di LILO, ma
questo avrebbe portato probabilmente a problemi sulle macchine con
poca RAM. Allora ho prefererito fare una piccola modifica al loader
degli addon: ora sono in grado di spezzare un floppy su piu' ramdisk.
In compenso, come si puo' vedere, c'e' ancora molto spazio libero
in /dev/ram4 e /dev/ram5: virtualmente, si puo' sviluppare codice C
completamente in RAM (pazzi!).
Il rovescio della medaglia e' che chi vuole scaricare GCC.tgz deve
upgradare anche mulinux-VERSION.tgz. X11.tgz, invece, viene ancora
caricato correttamente (spero).
Meditazioni
-----------
Inutile che me lo chiediate: la parte relativa al C++ non ci e' entrata
nel floppy. Ho fatto anche qualche tentativo con f2c, il traduttore
dal FORTRAN al C: ci andava, ma senza alcune delle librerie per generare
i binari. Il traduttore, infatti, aggiunge alcune chiamate a sue
funzioni (non sempre) che necessitano di altra roba per funzionare.
Se vi va bene anche solo il codice C, ce lo posso mettere.
HO provato a metterci il traduttore qb2c (dal QUICK-BASIC al C): l'ho
compilato, lo spazio c'era, ma semplicemente mi pare che NON funzioni
come dovrebbe.
Ho anche trovato un piccolo INTERPRETE BASIC: se lo volete, si puo'
mettere.
Per quanto riguarda "chimera", non vi aspettate cose eccezionali:
e' veramente spartano e, non vorrei sbagliarmi, mostra solo le immagini
di tipo GIF e non JPEG. Ho dovuto aggiungere alcuni fonts ad X-Windows
per farlo funzionare. Questo significa che scaricando solo il nuovo GCC,
chimera non funziona bene, o non funziona affatto.
Questo benedetto binario non usa, come gli altri programmi X, i file
di configurazione sotto /app-defaults, per cui e' scarsamente
addomesticabile. Supporta pero' gli url di tipo ftp:, file:, http: e
anche mailto:, ma non news:
Se si potesse, in un unico floppy, mettere il kernel, pppd, X Window e
chimera, si potrebbe fare un QNX alla buona. Secondo voi, si puo'
far partire chimera senza un Window Manager? Ah, saperlo!
Ciao,
Michele
-- Mi sarebbe piaciuto concludere con un'affermazione positiva, ma non me ne vengono in mente. Vanno bene due negative? -- Woody Allen
This archive was generated by hypermail 2.1.6 : Sat Feb 08 2003 - 15:27:11 CET