Wie kann ich einem C++-Programm eine statische Bibliothek (.a) hinzufügen?
Posted: 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:
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“
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
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:
Code: Select all
int foo(int a);
Code: Select all
#include foo.h
int foo(int a)
{
return a+1;
}
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;
}
Was ich versuche, ist Folgendes:
Code: Select all
g++ -L. -lfoo prog.cpp