[mu ANNOUNCE] Graphics WWW browser + GCC addon

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