Forum: Compiler & IDEs Simul AVR Problem beim Bauen


von Stefan May (Gast)


Lesenswert?

Hi all,

Ich versuche gerade den SimulAVR unter Debian Woody zu übersetzen.
Leider scheitert die Übersetzung mit folgendem Fehler:

make[3]: Entering directory
`/home/smay/development/avr/cdk/build/simulavr-0.1.2/src/disp-vcd'
if gcc-3.0 -DHAVE_CONFIG_H -I. -I. -I../../src    -Wall -Winline
-Werror -I../../src -I../../src/getopt -g -O2 -MT disp.o -MD -MP -MF
".deps/disp.Tpo" \
  -c -o disp.o `test -f 'disp.c' || echo './'`disp.c; \
then mv -f ".deps/disp.Tpo" ".deps/disp.Po"; \
else rm -f ".deps/disp.Tpo"; exit 1; \
fi
cc1: warnings being treated as errors
disp.c: In function `disp_parse_packet':
vcd.h:50: warning: can't inline call to `vcd_set_clock'
disp.c:224: warning: called from here
make[3]: *** [disp.o] Error 1
make[3]: Leaving directory
`/home/smay/development/avr/cdk/build/simulavr-0.1.2/src/disp-vcd'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/home/smay/development/avr/cdk/build/simulavr-0.1.2/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory
`/home/smay/development/avr/cdk/build/simulavr-0.1.2/src'
make: *** [all-recursive] Error 1


Die configure Optionen sind --prefix=/cdk, mehr nicht. Irgendjemand
eine Idee?

mfg, Stefan.

von Jörg Wunsch (Gast)


Lesenswert?

Naja, steht doch eigentlich da, es ist eine Warnung.

Wenn Du das -Werror rausnimmst, geht trotzdem alles weiter.

Das Problem tritt offenbar nur bei alten GCCs auf, neue GCCs (3.3.x)
ignorieren das entweder ohne Warnung oder sind dennoch in der Lage,
die Funktion inline zu erweitern.  Ted Roth weiß schon Bescheid, sein
offizieller Fix ist es, für vcd_set_clock() das `inline' rauszunehmen
(2 Dateien, src/disp-vcd/vcd.c und src/disp-vcd/vcd.h), aber eine neue
Version ist im Moment nicht in Arbeit, da er allerhand andere Dinge im
Code umgekrempelt hat, die erstmal wieder völlig in Ordnung gebracht
werden müssen.  Beim FreeBSD-Port habe ich daher einen lokalen Patch
eingebracht (FreeBSD 4.x benutzt auch noch einen alten GCC, bei 5.x
gab's keine Probleme).

von Stefan May (Gast)


Lesenswert?

Ok, jetzt hat es funktioniert. Ich ändere eigentlich ungern Code, den
ich nicht verstehe.

Ich habe noch mehr solcher Warnungen bekommen und habe die inlines
entfernt. Tut das dem Code weh? Das ist doch eigentlich nur eine
Optimierung.

ciao, Stefan.

von Jörg Wunsch (Gast)


Lesenswert?

Genau so ist das.  Wundert mich, daß Du davon noch mehr bekommen hast.

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

Man sollte sich vielleicht mal überlegen ob die Verwendung von
"-Werror" hier wirklich Sinn macht.

von Stefan May (Gast)


Lesenswert?

Na für die Entwicklung mag das sinnvoll sein. Ob das für ein Release
wirklich notwendig ist, mag ich auch bezweifeln.

Immerhin funktioniert es jetzt und ich schaue mal, warum mein Programm
nicht so wie ich will.

ciao, Stefan.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.