-         

Ergebnis 1 bis 5 von 5

Thema: Kompilierungsfehler in Verbindung mit Chirp

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    25.11.2009
    Beiträge
    7

    Kompilierungsfehler in Verbindung mit Chirp

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hallo,

    Ich habe ein Problem:
    Irgendwie bekomm ich immer eine merkwürdige Fehlermeldung, sobald ich die Chirpfunktion benutzen will. Ich habe Windows XP, AVR Lib 2.80, Programmers Notepad 2. Pfad in makefile wurde geändert. Die Dateien hab ich auch in den default Ordner kopiert/ersetzt und in den Options make new lib erstellt und dieses mit make-all verbunden.

    Wenn ich nun ein Programm kompiliere, indem nur "Standardfunktionen" aus der asuro.h verwendet werden gibt es keine Fehlermeldung, sobald ich die chirp Funktion verwenden möchte, erhalte ich folgende Fehlermeldung:
    Code:
    C:\Asuro\ASURO_src\FirstTry>make clean 
    set -e; avr-gcc -MM -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c \
    | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > test.d; \
    [ -s test.d ] || rm -f test.d
    -------- begin --------
    rm -f test.hex
    rm -f test.eep
    rm -f test.obj
    rm -f test.cof
    rm -f test.elf
    rm -f test.map
    rm -f test.obj
    rm -f test.a90
    rm -f test.sym
    rm -f test.lnk
    rm -f test.lss
    rm -f test.o asuro.o  
    rm -f  test.lst asuro.lst
    rm -f test.s asuro.s
    rm -f test.d asuro.d
    Errors: none
    -------- end --------
    
    C:\Asuro\ASURO_src\FirstTry>make MCU=atmega8 LIBFILE=asuro 
    set -e; avr-gcc -MM -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=asuro.lst asuro.c \
    | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > asuro.d; \
    [ -s asuro.d ] || rm -f asuro.d
    set -e; avr-gcc -MM -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c \
    | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > test.d; \
    [ -s test.d ] || rm -f test.d
    -------- begin --------
    avr-gcc --version
    avr-gcc (GCC) 3.3.1
    Copyright (C) 2003 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    avr-gcc -c -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.lst test.c -o test.o
    test.c: In function `main':
    test.c:17: warning: implicit declaration of function `SerPrint'
    test.c:25: warning: implicit declaration of function `PrintInt'
    avr-gcc -c -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=asuro.lst asuro.c -o asuro.o
    avr-gcc -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/Asuro/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=test.o test.o asuro.o   --output test.elf -Wl,-Map=test.map,--cref -LC:/Asuro/lib -lm -lasuro
    C:\WinAVR\bin\..\lib\gcc-lib\avr\3.3.1\..\..\..\..\avr\bin\ld.exe: BFD 2.14 20030612 + coff-avr-patch (20030831) internal error, aborting at ../../bfd/reloc.c line 444 in bfd_get_reloc_size
    
    C:\WinAVR\bin\..\lib\gcc-lib\avr\3.3.1\..\..\..\..\avr\bin\ld.exe: Please report this bug.
    
    make: *** [test.elf] Error 1
    
    C:\Asuro\ASURO_src\FirstTry>pause
    Press any key to continue . . .
    Und ich kann damit überhaupt nix anfangen. Mein Quellcode ist einfach nur ein Testcode für den Ultraschallsensor:
    Code:
    /***************************************************************************
     *                                                                         *
     *   This program is free software; you can redistribute it and/or modify  *
     *   it under the terms of the GNU General Public License as published by  *
     *   the Free Software Foundation; either version 2 of the License, or     *
     *   any later version.                                                    *
     ***************************************************************************/
    
    #include "asuro.h"
    #include "ultrasonic.h"
    
    int abstand=0;
    
    int main(void)
    {
      Init();
      SerPrint("\r\n  --- ultrasonic test ---");
     
      do
      {
        abstand = Chirp();
        SerPrint("\r\n distanz in cm: ");
        PrintInt(abstand);
      }
      while(1);
      return 0;
    }
    Das Programm geht, weil auch die hex datei dieses Programms mit dabei war...

    Ich hoffe sehr, dass ihr mir helfen könnt....

  2. #2
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.190
    Es wird noch eine Datei dazugehören in der SerPrint und PrintInt definiert sind.
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    25.11.2009
    Beiträge
    7
    Zitat Zitat von Hubert.G
    Es wird noch eine Datei dazugehören in der SerPrint und PrintInt definiert sind.
    Wie? Es geht doch nicht, wenn ich die chirp kompilieren möchte. Wenn ich die auskommentiere, funktioniert es ja, nur dann hab ich ja auch keinen Zugriff auf die Ultraschallsensoren.
    Die SerPrint und PrintInt Funktionen machen keine Probleme.

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von Hubert.G
    Registriert seit
    14.10.2006
    Ort
    Pasching OÖ
    Beiträge
    6.190
    Code:
    test.c:17: warning: implicit declaration of function `SerPrint'
    test.c:25: warning: implicit declaration of function `PrintInt'
    Das heist das der Compiler die declaration nicht findet, also wird die entsprechende Datei nicht eingebunden sein.
    So wird das auch mit den Chirp sein.
    Die ganzen ASURO Dateien habe ich nicht, daher kann ich nicht nachsehen welche fehlen.
    Grüsse Hubert
    ____________

    Meine Projekte findet ihr auf schorsch.at

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    25.11.2009
    Beiträge
    7
    Ursache des Problems gefunden. Ich habe noch die alte asuro.c in meinem Ordner gehabt. Deshalb wurden die Dateien falsch gelinkt

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •