[Gelöst] Ältere Revision(s), lzma2eva crc32-Fehler

Status
Für weitere Antworten geschlossen.

JohnDoe42

Aktives Mitglied
Mitglied seit
17 Mrz 2009
Beiträge
1,465
Punkte für Reaktionen
2
Punkte
38
Hallo zusammen,

beim Erstellen von Images aus älteren Trunk-Revisions passiert es immer wieder mal, das es beim Kompilieren diesen Fehler gibt:
Code:
make -j2 CC="gcc" LD="ld" -C /home/john/freetz-trunk-r7460/source/host-tools/lzma2eva
make[1]: Betrete Verzeichnis '/home/john/freetz-trunk-r7460/source/host-tools/lzma2eva'
gcc -W -Wall  -lz  lzma2eva.c   -o lzma2eva
/tmp/ccfZpZgC.o: In function `main':
lzma2eva.c:(.text+0xc9): undefined reference to `crc32'
lzma2eva.c:(.text+0x509): undefined reference to `crc32'
collect2: ld gab 1 als Ende-Status zurück
make[1]: *** [lzma2eva] Fehler 1
make[1]: Verlasse Verzeichnis '/home/john/freetz-trunk-r7460/source/host-tools/lzma2eva'
make: *** [/home/john/freetz-trunk-r7460/source/host-tools/lzma2eva/lzma2eva] Fehler 2
Aktuell passiert mir dies bei der Rev 7460.
Könnte mir jemand einen Tip geben, woran das liegen kann und wie ich dies abstellen kann ?
Grüße,

JD.
 
Zuletzt bearbeitet:
Versuch mal in der Makefile-Datei, diese Reiehnfolge:
Code:
gcc -W -Wall  lzma2eva.c -o lzma2eva -lz

In welchem Makefile denn ? /source/host-tools/lzma2eva/Makefile oder /tools/make/lzma2eva.mk ? In letzterem habe ich den Patch aus r7764 händisch eingetragen, Ergebnis: Keine Veränderung.
Ersteres Makefile lautet:
Code:
CFLAGS=-W -Wall
LDFLAGS=-lz

all: lzma2eva

clean:
	rm -f lzma2eva *.o

.PHONY: all clean
Wie muß ich hier die Flags anpassen, um zum von Dir vorgeschlagenen Compiler-Aufruf zu kommen ?

Leider benutzt diese Revision schon die 05er-FW für die 7390. Genau diese wollte ich nicht bauen ...
 
In welchem Makefile denn ? /source/host-tools/lzma2eva/Makefile oder /tools/make/lzma2eva.mk ?
Im /source/host-tools/lzma2eva/Makefile.
_Mögliche Vorgehensweise_: Kopiere den Patch von Oliver in der Verzeichnis ".../freetz-trunk/tools/make/patches", _deiner gewünschten_ devel-revision.
Geh in das Verzeichnis ".../freetz-trunk/source/host-tools/lzma2eva" deiner gewünschten devel-revision und wende den Patch von Oliver, an. Z. B.:
Code:
:~/myfreetz/freetz7293/freetz-trunk/source/host-tools/lzma2eva> patch -p0 < /home/gm/myfreetz/freetz7293/freetz-trunk/tools/make/patches/100-fix_missing_crc32.lzma2eva-1.patch
patching file Makefile
Code:
:~/myfreetz/freetz7293/freetz-trunk/source/host-tools/lzma2eva> make clean
rm -f lzma2eva *.o
Code:
gm@MAUNZI:~/myfreetz/freetz7293/freetz-trunk/source/host-tools/lzma2eva> make
cc -o lzma2eva lzma2eva.c -lz
Code:
:~/myfreetz/freetz7293/freetz-trunk/source/host-tools/lzma2eva> file ./lzma2eva./lzma2eva: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.4, not stripped
 
Auf der verlinkten Seite kannst du dir sowohl den Patch als auch den nötigen Diff herunterladen...

Gruß
Oliver
 
@ sf3978:

Besten Dank für Deine ausführliche Anleitung, hat alles funktioniert.
Deshalb kann jetzt hier geschlossen werden.
Grüße,

JD.
 
Und zu.

Gruß
Oliver
 
Status
Für weitere Antworten geschlossen.
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.