Vollständige Version anzeigen : Probleme beim Linken in C


s1nu
26.11.2013, 18:46

Hallo Leute,

ich hab wiedermal n nerviges Problem, dass ich jetzt irgendwie nicht lösen kann..

Es geht hier vermutlich um eine Grundsatzfrage. Ich habe 3 Files:

main;c
#include <stdio;h>
#include "clifo;h"

int main(void){
int a = 10;
int b = 10;

int erg = addiere(a,b);

return 0;
}


clifo;h:
#ifndef CLIFO_H_INCLUDED
#define CLIFO_H_INCLUDED

int addiere(int a, int b);

#endif // CLIFO_H_INCLUDED


und lifolib;c:
#include <stdio;h>
#include "clifo;h"

int addiere(int a, int b){
int erg = a+b;
return erg;
}


Leider bekomme ich das nicht gelinkt. Folgender Fehler wird mir immer angezeigt:

"undefinded reference to 'addiere'"

Die Header-Datei befindet sich im gleichen Verzeichnis wie die main;c !

Bitte sagt mir, was ich falsch mache?

Hardware Preisvergleich | Amazon Blitzangebote!

Videos zum Thema
Video Loading...
MasterJulian
26.11.2013, 19:04

Der Compiler und ggf. Flags währen wichtig, wenns Probleme beim linken gibt.

PS: Ich nenne meine c und h files immer gleich. In deinem Fall also clifo;h und clifo;c. K;a. ob das nötigt ist aber es schafft mMn einfach Übersichtlichkeit.


Murdoc
26.11.2013, 19:14

Du musst lifolib;c ebenfalls übersetzen und zusammen mit main;c dem linker übergeben.

gcc -o main;o -c main;c
gcc -o lifolib;o -c lifolib;c
gcc -o program;exe main;o lifolib;o


s1nu
26.11.2013, 19:15

Der Compiler und ggf. Flags währen wichtig, wenns Probleme beim linken gibt.

PS: Ich nenne meine c und h files immer gleich. In deinem Fall also clifo;h und clifo;c. K;a. ob das nötigt ist aber es schafft mMn einfach Übersichtlichkeit;


ok, danke schonmal für deine Rückmeldung. Ich hoffe, ich finde das, was du benötigst.

Also vorab ich verwende Geany und das Programm kompiliert denk ich mit gcc..

Hier die Flags:

beim Kompilieren (das klappt wunderbar):
gcc -Wall -c -std=c99 "%f"

beim Erstellen:
gcc -Wall -std=c99 -o "%e" "%f"

edit:
Du musst lifolib;c ebenfalls übersetzen und zusammen mit main;c dem linker übergeben.

gcc -o main;o -c main;c
gcc -o lifolib;o -c lifolib;c
gcc -o program;exe main;o lifolib;o



das geht leider nicht.. gleiches problem :(


Murdoc
26.11.2013, 19:48

So funktioniert das:
Download: test;zip | ;;xup~in (;;;xup~in/dl,10043803/test;zip/)

Makefile beachten.


s1nu
26.11.2013, 20:06

So funktioniert das:
Download: test;zip | ;;xup~in (;;;xup~in/dl,10043803/test;zip/)

Makefile beachten;


Ok, Danke. Und wo muss das Makefile hin? Sodass, das funktioniert :-)


Murdoc
26.11.2013, 20:14

Dieses Makefile ist speziell für diese Ordnerstruktur und Dateien.
Ein bisschen nachdenken und anpassen sollte wohl drin sein ;)


s1nu
26.11.2013, 20:31

Ja ich weiß was ein makefile macht, aber ich kompiliere ja nicht alles per hand..^^ sollte ja eigentlich die idee regeln xD


Ähnliche Themen zu Probleme beim Linken in C
  • [C/C++] mit Assembler linken?
    Hi RRler, will hier etwas ausprobieren bekomme es aber nicht hin. Also ich möchte einmal C code assemblieren und assemblercode (in nasm geschrieben) assemblieren und diese beiden zusammen linken. Leider finde ich im Internet nur wenig anleitungen dazu oder ich weiß nicht wonach ich suchen muss ? [...]

  • [Script] linken
    hey, bin programmierneuling und versuche grade ne seite zu erstellen und zwar möchte ich einen banner erstellen und wenn man drauf drückt sollen einmal eine von mir bestimmte seite öffnen und gleichzeitig soll die werbung in form eines banners die ich einbinde auf die seite öffnen kann mir da [...]

  • merkwürdiges Zittern beim linken Knie
    Hey Rush'ler! Ich habe mal eine Frage, ein paar von euch sind ja echt sportlkich und scheinen sich in dieser Materie ja auch ganz gut auszukennen. Ich hoffe, ihr könnt mir da mal helfen! Ich habe in letzter Zeit im Bereich des linken Knies (so ca 10 cm über der Kniescheibe) immer so ein komi [...]

  • [C/C++] error beim linken (LNK2001)
    Hi, also ich bin grade so ziemlich am verzweifeln. Ich hab hier ein C++ Buch vor mir liegen und ich erstelle jedes Projekt so wie es der Author beschrieben hat, aber seit ner gewissen Zeit gehts irgendwie nicht mehr und ich erhalte ständig diesen Fehler: --------------------Konfiguration: [...]



raid-rush.ws | Imprint & Contact pr