-         

Ergebnis 1 bis 2 von 2

Thema: eigene Lib nach asuro lib vorbild

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    06.07.2007
    Beiträge
    31

    eigene Lib nach asuro lib vorbild

    Anzeige

    Hi, ich habs trotz absoluter Ahnungslosigkeit was makefiles etc angeht geschafft die aktuelle Version der Asuro Lib hier ausm Forum zu konfigurieren und kann sie benutzten \o/

    Ich hab in meinem momentanen Programm auch noch n paar eigene Funktionen, die ich auch später nicht missen möchte und habe daher vor die in eine Extradatei auszulagern, die ich dann übers Makefile einbinde. Das würde ich vielleicht sogar noch schaffen, allerdings hab ich gelesen, dass die momentane AsuroLib so gebaut ist, das die Funktionen nur eingebaut werden, wenn sie im Programm auch wirklich genutzt werden (irgendwas mit objekten o_O?)

    Kann ich das auch auf einfachem Wege so machen, dass ich ne persönliche Lib mit meinen Funktionen erstelle und die dann auch einbinden lasse, wenn sie aufgerufen werden?

  2. #2
    Erfahrener Benutzer Roboter Genie Avatar von m.a.r.v.i.n
    Registriert seit
    24.07.2005
    Ort
    Berlin
    Beiträge
    1.247
    Hallo AppeL,

    ganz so ist es nicht. Es stimmt, die Asuro Lib ist eine sogenannte Objekt Library. Die Funktionen wurden in diverse Source Files aufgesplittet und das ganze dann zu einer Library zusammengepackt. Wenn der Linker so eine Lib einbindet, werden aber alle Funktionen aus dem entsprechenden Sourcefile eingebunden, auch wenn nur eine davon wirklich verwendet wird. Kurz gesagt, müßte man jede Funktion in ein eigenes Sourcefile packen, dann wäre es wirklich so, dass nur benutzte Funktionen eingebunden werden.

    Der Trick mir der Objekt Library steckt im Makefile der AsuroLib
    Du kannst dir einfach das Makefile anpassen und die Objekt Files durch deine eigenen ersetzen (für jedes c-File das entsprechende o-File)
    Code:
    OBJECTS = globals.o adc.o adc_low.o encoder.o encoder_low.o i2c.o leds.o lcd.o\
     	motor.o motor_low.o my_motor_low.o print.o printf.o rc5.o sound.o switches.o\
      time.o uart.o ultrasonic.o version.o
    Andere AVR Compiler können das auch ohne Objekt Libraries. CodeVisionAVR z.B. optimiert alle Funktionen und Variablen weg, die nicht benötigt werden.
    Dafür kostet die Vollversion auch 150€.

    Gruß Peter

Berechtigungen

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