Archiv verlassen und diese Seite im Standarddesign anzeigen : compiling error mit eclipse
tortelini66
11.10.2010, 10:28
Hi Leute,
ich habe ein großes Problem, und zwar wollte ich jetzt mal mit eclipse meinen asuro programmieren, und habe den avr dingsbums über install new software erfolgreich eingebunden.
Danach habe ich in einem test projekt noch schnel asuro.h eingebunden, und konnte das programm dann ohne errors compilieren, naja ein error ist geblieben und zwar ist das der error : make:*** [test.elf] Error 1
Ich hab im Netz nichts gefunden, und möchte doch so gerne mein programm aufspielen *schnief*
MfG tortelini66
Wie wäre es wenn du Mal die vollständige Ausgabe im Konsolenfenster hier einstellst - die Fehlermeldung sagt so nichts aus.
mfG
Markus
tortelini66
11.10.2010, 20:25
wenn hilft, hier die console:
**** Build of configuration Release for project test ****
make all
Building file: ../test.c
Invoking: AVR Compiler
avr-gcc -Wall -Os -fpack-struct -fshort-enums -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega8 -DF_CPU=8000000UL -MMD -MP -MF"test.d" -MT"test.d" -c -o"test.o" "../test.c"
Finished building: ../test.c
Building target: test.elf
Invoking: AVR C Linker
avr-gcc -Wl,-Map,test.map -mmcu=atmega8 -o"test.elf" ./test.o
./test.o(.text+0x8): In function `main':
: undefined reference to `Init'
./test.o(.text+0xc): In function `main':
: undefined reference to `FrontLED'
./test.o(.text+0x12): In function `main':
: undefined reference to `LineData'
./test.o(.text+0x18): In function `main':
: undefined reference to `LineData'
./test.o(.text+0x1e): In function `main':
: undefined reference to `LineData'
./test.o(.text+0x24): In function `main':
: undefined reference to `LineData'
./test.o(.text+0x104): In function `main':
: undefined reference to `StatusLED'
./test.o(.text+0x10a): In function `main':
: undefined reference to `LineData'
./test.o(.text+0x32c): In function `main':
: undefined reference to `BackLED'
./test.o(.text+0x362): In function `main':
: undefined reference to `StatusLED'
./test.o(.text+0x368): In function `main':
: undefined reference to `MotorSpeed'
make: *** [test.elf] Error 1
Er sagt damit das du Funktionen benutzt die er nicht kennt. Also wohl ne .H nicht richtig includiert.
Da fehlt noch mehr - Er bemängelt vor allem dass ihm die Funktionen selbst fehlen.
Ich möchte fast wetten dass die asuro.c fehlt.
mfG
Markus
tortelini66
11.10.2010, 21:09
und wie includier ich sie richtig?
Eigentlich reicht es, wenn asuro.c und asuro.h im Projektverzeichnis liegen, (also da wo auch dein Quelltext untergebracht ist), Eclipse sollte dann alles zusammen compilieren. Einfach in den Ordner reinkopieren reicht (und evtl. in Eclipse noch das Projekt markieren und einmal F5 drücken)
mfG
Markus
Hallo.
Ich bin erst auf C umgestiegen und nutze hierzu eclipse. Nach dem ich es geschafft habe 2 LED's blinken zu lassen, dachte ich mir dass wohl alles soweit funktioniert... Nachdem ich mein Projekt portiert habe (TSIC Temperatursensor auslesen) und STRG+B drückte, kam der oben beschriebene Fehler... in Verschiedenen Foren wird hierüber geschrieben, also habe ich einiges versucht, aber leider ohne Erfolg. Nach der dritten neuinstallation (Eclipse, winavr und avrgcc) habe cih das Tutorial (http://www.wiki.elektronik-projekt.de/mikrocontroller/avr/avr_eclipse_tutorial_part_2) abgehandelt.
Leider mit dem selben Ergebnis:
Description Resource Path Location Type
make: *** [Tutorial.elf] Error 1 C/C++ Problem
und der Console Auszug:
21:32:14 **** Incremental Build of configuration Release for project Tutorial ****
make all
Building file: ../main.c
Invoking: AVR Compiler
avr-gcc -Wall -Os -fpack-struct -fshort-enums -std=gnu99 -funsigned-char -funsigned-bitfields -mmcu=atmega8 -DF_CPU=8000000UL -MMD -MP -MF"main.d" -MT"main.d" -c -o "main.o" "../main.c"
Finished building: ../main.c
Building target: Tutorial.elf
Invoking: AVR C Linker
avr-gcc -Wl,-Map,Tutorial.map -mmcu=atmega8 -o "Tutorial.elf" ./main.o
Finished building target: Tutorial.elf
Invoking: AVR Create Extended Listing
avr-objdump -h -S Tutorial.elf >"Tutorial.lss"
Finished building: Tutorial.lss
Create Flash image (ihex format)
avr-objcopy -R .eeprom -O ihex Tutorial.elf "Tutorial.hex"
Finished building: Tutorial.hex
Create eeprom image (ihex format)
avr-objcopy -j .eeprom --no-change-warnings --change-section-lma .eeprom=0 -O ihex Tutorial.elf "Tutorial.eep"
Finished building: Tutorial.eep
Invoking: Print Size
avr-size --format=avr --mcu=atmega8 Tutorial.elf
AVR Memory Usage
----------------
Device: atmega8
Program: 62 bytes (0.8% Full)
(.text + .data + .bootloader)
Data: 0 bytes (0.0% Full)
(.data + .bss + .noinit)
Finished building: sizedummy
21:32:19 Build Finished (took 5s.700ms)
__________________________________________________ ____________________
Wie bekomme ich diesen *.elf Fehler aus meiner Anwendung?
Seit dem ich den Fehler das erste mal hatte, ist er in jedem Projekt.
Danke für die Hilfe
Du hast ein anderes Problem das eigentlich in einen neuen Thread gehört hätte.
Der Build funktioniert scheinbar, zumindest sieht das Protokoll normal aus. Warum du trotzdem diese Fehlermeldung bekommst, kann ich dir ohne weitere Informationen nicht sagen. Welche Programmversionen (Eclipse, avr-eclipse, gcc) verwendest du? Ach ja: Führe den Build-Vorgang einmal komplett neu aus, dazu gibt es im Build-Menü den Punkt "clean", vielleicht ist dann mehr im Protokoll zu erkennen.
mfG
Markus
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.