.obj file einbinden

Tom_Green

Mitglied
Hallo zusammen

Ich habe eine kleine Frage. Wie und wo kann ich eine .obj file im Visual Studio einbinden? Muss ich dass mit include machen oder wie geht das?

mfg
 
Was hast du genau vor? Wo hast du diese obj-Datei denn her?
Mit "#include" bindest du Header-Dateien ein (normalerweise ".h").
Ansonsten brauchst du noch lib-Dateien, aber eine obj-Datei wirst du so nicht verwenden können. Du kannst sie höchstens mit den obj-Dateien, die aus deinem Quellcode erzeugt wurden, zusammen zu einer Exe- oder DLL-Datei linken lassen.
 
Mir hat ein kollege einen code geschrieben, der funktionen rechnen soll. und jetzt hat er mit die header datei und eine .obj datei geschick und gesagt ich müsse diese nur einbinden und dann funktioniere das. wie und wo müsste ich dann diese .obj datei mit denn anderen linken?

mfg
 
Du kannst im Project unter C++ precomilierte Header Dateien angeben. Ansonsten noch die Headerdatei mit Rechtsklick auf Projekt und Hinzufügen und dann gehts weiter.
 
das funktioniert irgendwie nicht. hmm hab hier mal die fehlermeldung
PHP:
1>------ Erstellen gestartet: Projekt: Project_Graph_Informatic, Konfiguration: Debug Win32 ------
1>Verknüpfen...
1>Project_Graph_InformaticDoc1.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""float __cdecl Funktion(char const * const,float)" (?Funktion@@YAMQBDM@Z)" in Funktion ""public: long __thiscall CProject_Graph_InformaticDoc::SetGraphDatawithFunction(void)" (?SetGraphDatawithFunction@CProject_Graph_InformaticDoc@@QAEJXZ)".
1>mfcs80d.lib(stdafx.obj) : error LNK2001: Nicht aufgelöstes externes Symbol ""int __cdecl _AfxInitManaged(void)" (?_AfxInitManaged@@YAHXZ)".
1>C:\Dokumente und Einstellungen\Peter\Eigene Dateien\Visual Studio 2005\Projects\Project_Graph_Informatic\Debug\Project_Graph_Informatic.exe : fatal error LNK1120: 2 nicht aufgelöste externe Verweise.
1>Das Buildprotokoll wurde unter "file://c:\Dokumente und Einstellungen\Peter\Eigene Dateien\Visual Studio 2005\Projects\Project_Graph_Informatic\src\Debug\BuildLog.htm" gespeichert.
1>Project_Graph_Informatic - 3 Fehler, 0 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========

Mein File heisst, aber formcalc.obj ist das ok? Diese muss ich bei vorkompilierten header einbinden. und formcalc.h muss ich dem projekt hinzufühgen?

und so sieht mein vorkompiliertes header zeugs aus.
 

Anhänge

  • Neues Bild (1).jpg
    Neues Bild (1).jpg
    34,2 KB · Aufrufe: 163
Hast du auch die Funktionsprototypen angegeben? Der Linker findet deine Funktionen nicht der weiß nicht von alleine, daß die da sind. Dem Funktionsprototyp wird ein "extern" vorangestellt. Handelt es sich um C Funktionen muss es "extern "C"" sein. so wie es aussieht, ist die Headerdatei nicht richtig eingefügt ins Project, da stehen bestimmt auch die Funktionsprototypen drin. Die Headerdatei musst du dem Project selber hinzufügen, vorne im Ordnerbaum kann man das ganz einfach machen mir Rechtsklick aufs Projektnamen, nicht in den Projektproperties nehm das formcalc.h da mal wieder raus. Vorne im Ordnerbaum müsste es auch einen Ordner Header geben, da sollte die Headerdatei später auftauchen wenn du die hinzufügst.
 
Zuletzt bearbeitet:
Hi.

Die .obj Datei als vorkompilierten Header einzustellen ist unsinnig. Nimm das mal wieder raus.

Die Funktion ist offensichtlich deklariert, denn der Compiler beschwert sich nicht. (Das heißt du kannst den letzten Beitrag von The_Rave einfach vergessen).

Um die .obj Datei hinzuzulinken müßtest du die Datei beim Linker mit angeben. Trag die .obj Datei mal in den Projekteigenschaften unter Linker->Eingabe: Zusätzliche Abhängigkeiten ein.

Gruß
 
Zurück