FB18 - Das Forum für Informatik

fb18.de / Bachelorstudieng / PM Technische Informatik

[GSS] Übersetzte Bibliotheken in C nutzen

[GSS] Übersetzte Bibliotheken in C nutzen 2012-06-15 19:42
malexmave
Moin,

ich versuche mich gerade spaßenshalber an Aufgabe 2.5 des aktuellen GSS-Zettels. Darin bekommen wir ja eine datei password_compare.o gestellt, die wir nutzen sollen.

Ich bin ein C-Noob, aber würde es gerne aus Interesse trotzdem mal versuchen. Nur leider scheitert es bei mir schon beim einbinden der .o-Datei in meine .c. Ich weis, dass das ganze im Zweifel trivial ist, aber ich finde auch mit meinen Suchbegriffen nichts bei Google zum Thema (Schon, weil ich nicht genau weis, was das Problem ist).

Also, kann mir jemand kurz sagen, wie ich die Datei include und das ganze dann am ende kompiliere? Den rest bringe ich mir schon selber bei, keine Sorge ;-).

Danke.
malexmave

RE: [GSS] Übersetzte Bibliotheken in C nutzen 2012-06-15 19:54
UncleOwen
Includen oder einbinden in Deine .c-Datei musst Du da gar nichts. Erst Deine .c-Datei einzelnd kompilieren (gcc -c deinprogramm.c -o deinprogramm.o), dann das ganze zusammenlinken (gcc deinprogramm.o password_compare.o -o deinprogramm)

RE: [GSS] Übersetzte Bibliotheken in C nutzen 2012-06-15 20:24
malexmave
D'oh. Das erklärt's.

Jetzt bleibt er beim zweiten schritt hängen und beschwert sich, dass die vorgegebene .o inkompatibel sei mit meiner (i386:x86-64 architecture of input file `password_compare.o' is incompatible with i386 output). Dafür gibt's laut Google entweder ne Menge oder gar keine Lösungen, ich kriege die gefundenen auf jeden Fall nicht auf die Reihe. Vielleicht sollte ich es einfach erstmal lassen.

RE: [GSS] Übersetzte Bibliotheken in C nutzen 2012-06-15 20:33
UncleOwen
Ist halt ein 64bit-Binary. Steht auch so in der Aufgabenstellung.

RE: [GSS] Übersetzte Bibliotheken in C nutzen 2012-06-15 20:47
malexmave
Jop. Bin halt einigermaßen platformunabhängige Sachen wie Python und so gewöhnt, da ist C echt bösartig. Irgendwann lerne ich das auch nochmal, aber nicht heute Abend mit zu wenig Schlaf in der letzten Nacht.