Compiler (g++, g77) meldet "multiple common of ...."(Intern)


o TeX o Ascii

Supportdatenbank (cg_prevcomm)
Bezieht sich auf

SuSE Linux: Version 6.1
Dieser Artikel bezieht sich auf eine ältere SuSE Linux Version. Daher ist es möglich, dass die Informationen in diesem Artikel nicht mehr auf dem neuesten Stand sind bzw. der Artikel nicht mehr funktionierende Links enthält.


SuSE-INTERN:

Symptom:

Früher ohne Fehler oder Warnungen compilierende Quelltexte führen während des Linkvorganges nun zu zahlreichen Warnungen der Art:
objektfile1.o: warning: multiple common of `....'
objektfile2.o: warning: previous common is here

Ursache:

Der in SuSE Linux 6.1 enthaltene egcs-Compiler hat die Linkeroption `warn-common' standardmässig aktiviert. Dies führt bei vielen C++ und Fortran Programmen zu den oben genannten Warnungen.

Lösung:

Editieren Sie das Spec-File des Compilers. Ersetzen Sie in der Datei /usr/lib/gcc-lib/i486-linux/egcs-2.91.66/specs

die Zeile:
*lib:
-warn-common%{shared: -lc}    %{!shared: %{mieee-fp:-lieee} %{pthread:-lpthread}        %{profile:-lc_p} %{!profile: -lc}}
durch:
*lib:
%{shared: -lc}    %{!shared: %{mieee-fp:-lieee} %{pthread:-lpthread}        %{profile:-lc_p} %{!profile: -lc}}

Stichwörter:

Kategorien: Entwicklungswerkzeuge

SDB-cg_prevcomm, Copyright SuSE Linux AG, Nürnberg, Germany
Author: cg@suse.de - Version: 26. Mai 1999
SuSE Linux AG - Zuletzt generiert: 25. Mär 2002 von cg (sdb_gen 1.40.0)