PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : asuro badnd II, software, geradeausfahren & lib 2.7



inka
13.08.2007, 12:36
hi allerseits,
bin nun endlich umgezogen, kisten ausgepackt, asuro geht samt flashen...:-)

bin nun wieder / endlich wieder bei den anfängen...
könnte mir bitte jemand verraten was die folgende fehlermeldung beim kompilieren der software mit lib 2.7. bedeuten könte?


C:/Programme/asuro/win_avr/bin/../lib/gcc/avr/3.4.6/../../../../avr/lib/avr4/crtm8.o: In function `__vectors':
../../../../../avr-libc-1.4.4/crt1/gcrt1.S:51: undefined reference to `main'
make: *** [band_II.elf] Error 1

ich weiss, manchmal bin ich etwas chaotisch :-(

die fehlermeldung sieh - nachdem ich an den verzeichnissen etwas herumgeschraubt habe so aus:

C:\Programme\asuro\win_avr\bin\..\lib\gcc\avr\3.4. 6\..\..\..\..\avr\bin\ld.exe: cannot find -l_2_7\lib\lib\libasuro
make: *** [band_II.elf] Error 1
wird mir aber nicht verständlicher :-(


vielen dank...

damaltor
14.08.2007, 16:50
erste fehlermeldung: keine main-funktion?

zweite: fehler mit der lib?

Sternthaler
14.08.2007, 23:38
Hallo inka,
im Output 2 steht: cannot find -l_2_7\lib\lib\libasuro
Dies sieht mir so aus, als ob in deinem Makefile ungefähr folgendes steht:
VARIABLE_X = blahblah/libasuro/lib

und dann noch irgend etwas wie:
$(VARIABLE_X)/lib

Dann würdest du das /lib/ ZWEI-mal bekommen. libasuro.a wird aber nur in .../avr/lib mit nur einmal /lib abgelegt.

m.a.r.v.i.n
15.08.2007, 10:01
Hallo inka,

eine Pfadangabe beim Einbinden einer Lib mit dem Parameter '-l' ist nicht möglich. Für eine Pfadangabe muß man den Parameter -L verwenden.
So sollte es gehen (anpassen im Makefile):



LDFLAGS += -Llib_2_7/lib/lib
LDFLAGS += -lasuro


Man sollte normale '/' nehmen keine '\'.
Beim Libnamen läßt man den prefix 'lib' weg.

damaltor
15.08.2007, 15:34
sollten unter windows nicht die \ verwendet werden...?

Sternthaler
15.08.2007, 23:15
Jetzt bin ich ja mal gespannt, wo der Fehler nun tatsächlich steckt?

@damaltor
Ist schon richtig, dass man auch bei Windoof den / benutzt.
Hat den Vorteil, dass das Makefile kompatibel mit TUNIX bleib. Und es geht ja unter Windoof. (Die in Redmond haben dazugelernt)

inka
20.08.2007, 13:32
alles viieeelll einfacher :-(

man sollte keine trottel an die tastatur lassen. ich habe "mail" statt "main" geschrieben...

danke allen für ihre mühe...

der chaot

Sternthaler
20.08.2007, 19:00
Na, das ist doch toll, wenn jetzt alles geht.
Oh inka, beim nächsten mal den Programmcode vielleicht sofort? ;-) #-o

damaltor
26.08.2007, 15:13
hrhr.. an sowas bin ich auch gerade gescheitert... hab 0x80 anstelle von 0x40 getippt bei der ansteuerung eines lcd-displays. es hat 5 wochen gedauert bis ich es gemerkt hab..