by Guest » 04 Jan 2025, 02:29
Wie kann ich eine statische Bibliothek in einem von mir erstellten C++-Programm verwenden?
Nehmen wir zum Beispiel an, ich führe die folgenden Aktionen aus:
1. Zuerst erstelle ich die Datei foo.h und füge den folgenden Code hinzu:
2. Im Gegenzug erstelle ich foo.cpp und füge Folgendes hinzu:
Code: Select all
#include foo.h
int foo(int a)
{
return a+1;
}
3. Dann verwende ich den C++-Compiler GCC von GNU (außer dass ich die G++-Version verwende), der etwa wie folgt aussieht:
3a. g++ foo.cpp
3b. ar rc libfoo.a foo.o
4. Ich erstelle die Hauptdatei meines Programms, main.cpp
Datei: „main.cpp“
Code: Select all
#include "foo.h"
int main()
{
int i = foo(2);
return i;
}
Hier erhalte ich eine Fehlermeldung. Wie kann ich meine statische .a-Bibliothek mit main.cpp kompilieren?
Was ich versuche, ist Folgendes:
erhalte jedoch eine Fehlermeldung, da die Funktion foo nicht gefunden werden würde
Wie kann ich eine statische Bibliothek in einem von mir erstellten C++-Programm verwenden?
Nehmen wir zum Beispiel an, ich führe die folgenden Aktionen aus:
[b]1. Zuerst erstelle ich die Datei foo.h und füge den folgenden Code hinzu:[/b]
[code] int foo(int a);
[/code]
[b]2. Im Gegenzug erstelle ich foo.cpp und füge Folgendes hinzu:[/b]
[code]
#include foo.h
int foo(int a)
{
return a+1;
}
[/code]
[b]3. Dann verwende ich den C++-Compiler GCC von GNU (außer dass ich die G++-Version verwende), der etwa wie folgt aussieht:[/b]
[b]3a. g++ foo.cpp[/b]
[b]3b. ar rc libfoo.a foo.o[/b]
[b]4. Ich erstelle die Hauptdatei meines Programms, main.cpp[/b]
Datei: „main.cpp“
[code]#include "foo.h"
int main()
{
int i = foo(2);
return i;
}
[/code]
Hier erhalte ich eine Fehlermeldung. Wie kann ich meine statische .a-Bibliothek mit main.cpp kompilieren?
Was ich versuche, ist Folgendes:
[code]g++ -L. -lfoo prog.cpp
[/code]
erhalte jedoch eine Fehlermeldung, da die Funktion foo nicht gefunden werden würde