linux-l: signifikante Laenge von Variablennamen in C

Volker Mueller volker.mueller at gmx.de
Mo Okt 25 20:44:50 CEST 1999


High Ihrs,

nu aergert mich hier schon wieder der Kernel. (Und das nach 'ner
guten halben Stunde kompilieren - haette er sich das nicht frueher
ueberlegen koennen? Oder will mir nicht mal jemand 'n neuen Rech-
ner schenken?)

Der 2.2.13 is ja nu draussen und ich dachte mir, es waere doch
mal angebracht, meinen 2.0.36 hier zu Hause zu ersetzen. Aber ach:

checksum.c:200: redefinition of `csum_partial_copy'
checksum.c:105: `csum_partial_copy' previously defined here
{standard input}: Assembler messages:
{standard input}:185: Fatal error: Symbol csum_partial_copy already defined.
make[2]: *** [checksum.o] Error 1
make[2]: Leaving directory `/usr/src/linux-2.2.13.clean/arch/i386/lib'
make[1]: *** [first_rule] Error 2
make[1]: Leaving directory `/usr/src/linux-2.2.13.clean/arch/i386/lib'
make: *** [_dir_arch/i386/lib] Error 2

Also seh' ich mal eben nach und finde folgendes:

Zeile 104-105
unsigned int csum_partial_copy_fromuser(const char *src, char *dst,
                                  int len, int sum) {
Zeile 199-200
unsigned int csum_partial_copy(const char *src, char *dst,
                                  int len, int sum) {

Was ja nun eindeutig verschieden ist. Wo muss ich dem Compiler nun
sagen, dass er bitteschoen den kompletten Namen der Funktion zur
Unterscheidung heranziehen soll? Reicht es, einfach den egcs wieder
runterzutun und gccfront einzuspielen (Den egcs statt gccfront
brauchte ich zum Uebersetzen von octave (das hat uebrigens 3.5 h
gedauert (zu viele Klammerebenen machen den Text (nicht unerheblich)
unuebersichtlich)))? Gibt es irgendwo einen Schalter, mit dem die
signifikante Variablenlaenge eingestellt wird (ein schneller Grep
nach "variable" in man gcc brachte erstmal nix zutage).

Systembeschreibung: siehe unten.

Tschau, Volker

-----

volker at flinux:/tmp/t > gcc -v
Reading specs from /usr/lib/gcc-lib/i486-linux/egcs-2.91.60/specs
gcc version egcs-2.91.60 19981201 (egcs-1.1.1 release)

volker at flinux:/tmp/t > make -v
GNU Make version 3.76.1, by Richard Stallman and Roland McGrath.
[...]

volker at flinux:/tmp/t > uname -a
Linux flinux 2.0.36 #3 Tue Apr 6 15:36:52 MEST 1999 i486 unknown

volker at flinux:/tmp/t > /sbin/ldconfig -p | grep libc.so
        libc.so.6 (libc6) => /lib/libc.so.6
        libc.so.5 (libc5) => /usr/i486-linux-libc5/lib/libc.so.5
        libc.so.1 (libc5) => /usr/i486-linux-libc5/lib/libc.so.1
        libc.so (libc5) => /usr/i486-linux-libc5/lib/libc.so

Fehlt noch was? Nachlieferung garantiert ;-)

-- 
:r .signature               | mailto:volker.mueller at gmx.de
Can't open file .signature  | http://www.in-berlin.de/user/flinux
<ESC>:wq



Mehr Informationen über die Mailingliste linux-l