Eclipse und avr plugin zerschossen

OP #1481177
Hallo Leute, ich habe ein riesen Problem:
Schreibe in C mit eclipse und dem avr plugin.
Hatte das alles wie im Tutorial 
hier:http://www.wiki.elektronik-projekt.de/mikrocontroller/avr/avr_eclipse_tutorial
beschrieben installiert und es funktionierte prima.

Dann sollt ich einen µc mit c51 Kern programmieren, also alles nötige 
für eclipse runter geladen und installiert. Aber funzte nicht.
Nun wollt ich wieder avr programmieren und das geht nun auch nichtmehr.
Hab alles deinstalliert und gelöscht und eclipse und plugins wie im oben 
genannten Tutorial wiede rinstalliert.
Leider geht es trotzdem nicht.

Beim compilieren kommt nun folgender Fehler:
Building file: ../main.c

Invoking: AVR Compiler
avr-gcc -Wall -g2 -gstabs -O2 -fpack-struct -fshort-enums 
-funsigned-char -funsigned-bitfields -mmcu=atmega32 -DF_CPU=8000000UL 
-MMD -MP -MF"main.d" -MT"main.d" -c -o"main.o" "../main.c"
/usr/bin/sh: /c/WinAVR-20081205/bin/avr-gcc: Bad file number
make: *** [main.o] Error 126

Weis jemadn woran es liegen kann?
Stehe kurz davor ne Formatiersession zu starten, weil ich das unbedingt 
brauche.
Gast
Das ist wohl eher ein Problem der WinAVR-Installation.

Hat die c51-Compiler-Installation die Pfade verstellt?

Gibt es da eine andere "Linux"-sh auf deinem Rechner?

Als erstes würde ich mal WinAVR de- und dann neu installieren.

Oliver
Ich würde mal darauf tippen, dass ein falsches 'make' gestartet wird. 
Check doch mal die Pfade unter Preferences -> AVR -> Paths und stell 
sicher, dass der Pfad zu 'make' auf Dein winAVR\util\bin Verzeichnis 
zeigt.

Wenn das nicht hilft dann mal folgendes Probieren:
Bei einem AVR Projekt die Properties öffnen, zu C/C++ Build gehen, dann 
im 'Builder Settings' Tab das Häckchen bei 'use default build command' 
entfernen und dafür im Textfeld darunter den kompletten Pfad zu 'make' 
eingeben, z.b. 'D:\AVR\WinAVR-20090313\utils\bin\make'

Damit müsste es eigentlich funktionieren.


Hintergrund:

Eclipse startet zum kompilieren das erste 'make', das es im PATH findet. 
Deswegen hängt das AVR Plugin den Pfad zum Compiler und zu 'make' vor 
den normalen Systempfad. Der genauen PATH kann man sich bei den Project 
properties unter 'C/C++ Build -> Build Variables -> Show system 
variables' anzeigen lassen.
Gast
Mach mal ein Eingabefenster auf, und tippe "which make.exe" ein. Da 
sollte dann das make aus dem WinAVR-Paket angezeigt werden. Wenn nicht, 
geh halt in die Systemsteuerung, und schmeiß den falschen Eintrag dort 
raus.

Oliver
OP
Also wenn ich ein neues Projekt anlege und nur die main.c und dann auf 
kompilieren drücke kommt folgende Meldung:
Building target: test2.elf
Invoking: AVR C Linker
avr-gcc -Wl,-Map,test2.map -mmcu=atmega162 -o"test2.elf"  ./main.o
c:/winavr-20081205/bin/../lib/gcc/avr/4.3.2/../../../../avr/lib/avr5/crt 
m162.o:(.init9+0x0):  undefined reference to `main'
make: *** [test2.elf] Error 1

vielleicht hilft das ja weiter
Christian Hohmann schrieb:
> Also wenn ich ein neues Projekt anlege und nur die main.c und dann auf
> kompilieren drücke kommt folgende Meldung:
> Building target: test2.elf
> Invoking: AVR C Linker
> avr-gcc -Wl,-Map,test2.map -mmcu=atmega162 -o"test2.elf"  ./main.o
> c:/winavr-20081205/bin/../lib/gcc/avr/4.3.2/../../../../avr/lib/avr5/crt 
m162.o:(.init9+0x0):
> undefined reference to `main'
> make: *** [test2.elf] Error 1
>
> vielleicht hilft das ja weiter

In Deiner main.c fehlt die "main" Funktion. Zum testen reicht ein
1
int main(void) {
2
    return 0;
3
}

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.