Fehler: multiple definition of `__vector_x'

Hallo zusammen,
Ich weiß leider nicht, wie ich diese Fehler beheben kann.

WInterrupts.c.o (symbol from plugin): In function `attachInterrupt':
(.text+0x0): multiple definition of `__vector_1'
sketch\LCDML_i2c_display_20x4.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here
WInterrupts.c.o (symbol from plugin): In function `attachInterrupt':
(.text+0x0): multiple definition of `__vector_2'
sketch\LCDML_i2c_display_20x4.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here
WInterrupts.c.o (symbol from plugin): In function `attachInterrupt':
(.text+0x0): multiple definition of `__vector_3'
sketch\LCDML_i2c_display_20x4.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here
WInterrupts.c.o (symbol from plugin): In function `attachInterrupt':
(.text+0x0): multiple definition of `__vector_4'
sketch\LCDML_i2c_display_20x4.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here
WInterrupts.c.o (symbol from plugin): In function `attachInterrupt':
(.text+0x0): multiple definition of `__vector_5'
sketch\LCDML_i2c_display_20x4.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here
WInterrupts.c.o (symbol from plugin): In function `attachInterrupt':
(.text+0x0): multiple definition of `__vector_6'
sketch\LCDML_i2c_display_20x4.ino.cpp.o (symbol from plugin):(.text+0x0): first defined here
collect2.exe: error: ld returned 1 exit status
exit status 1
Fehler beim Kompilieren für das Board Arduino Mega or Mega 2560.

Vielen Dank im Voraus
Liebe Grüße

Ohne Sketsch wird das schwere Geburt :wink:

Ich auch nicht!
Weiß ja noch nicht einmal, was du da tust....

Auf jeden Fall: Du solltest es sein lassen, bzw. anders machen, denn so geht es nicht.

und meine Kristallkugel ist noch in der Spülmaschine.

und nun?

Man, die ist doch schon mat, Zeit neue holen :wink:

Ich glaube, der Compiler (eigentlich Linker), sagt, dass __vector_1 schon definiert wurde (es doppelt ist).
Einmal vermutlich in Datei "LCDML_i2c_display_20x4.ino.cpp" definiert und dann kommt es nochmal uber Datei "WInterrupts.c".

Einmal mach suchen, wo denn __vector_1 definiert ist.
Und ob Du "extern" meinst (weil schon woanders definiert).

Kann auch sein, dass eine Definition aus der LIB kommt, eine Datei von da benutzt.

"grepWin" kann helfen zu suchen, wo es her kommt (IDE ist nicht gerade sehr "kooperativ" beim Browsen durch all den Code).

"multiple definition of" meint wirklich: es ist schon mal definiert worden (nun doppelt).

Das kann ich dir sagen!
In den mitgelieferten Gcc Dateien.


In der Verwendung sollte man dann eher nach INT0_vect (und den anderen) suchen!
Siehe: avr-libc: <avr/interrupt.h>: Interrupts

Hallo,
@tjaekel @combie
vielen Dank für die Antwort!
Der Fehler wurde behoben, vielen Dank nochmal

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.