Heim > Backend-Entwicklung > C++ > Wie verknüpfe ich Fortran- und C-Binärdateien, ohne dass Bibliotheksabhängigkeiten fehlen?

Wie verknüpfe ich Fortran- und C-Binärdateien, ohne dass Bibliotheksabhängigkeiten fehlen?

Linda Hamilton
Freigeben: 2024-10-26 03:28:28
Original
936 Leute haben es durchsucht

 How to Link Fortran and C   Binaries Without Missing Library Dependencies?

Verknüpfen von Fortran- und C-Binärdateien: Beheben von Bibliothekskonflikten

Bei der Entwicklung von Projekten, die sowohl C- als auch Fortran-Code beinhalten, ist es notwendig, die zu verknüpfen resultierende Binärdateien zusammen, um ein zusammenhängendes Programm zu erstellen. Der Versuch, solche Projekte allein mit g oder gfortran zu kompilieren, kann jedoch aufgrund fehlender Bibliotheksabhängigkeiten zu Fehlern führen.

Um diese Probleme zu beheben, ist es wichtig, das entsprechende Verknüpfungsflag zu verwenden, das die erforderliche Bibliothek für angibt andere Sprache.

Lösung zum Verknüpfen von C- und Fortran-Binärdateien

Befolgen Sie beim Verknüpfen eines Projekts mit C und Fortran die folgenden Schritte:

  • Verwenden Sie g, um den C-Quellcode zu kompilieren: g -c main.cpp -o main.o
  • Verwenden Sie gfortran, um den Fortran-Quellcode zu kompilieren: gfortran -c print_hi.f90 -o print_hi.o
  • Verknüpfen Sie die kompilierten Objektdateien mit g : g main.o print_hi.o -o main -lgfortran

Dieser Befehl schließt beim Verknüpfen die erforderlichen Fortran-Bibliotheken (-lgfortran) ein und löst dadurch das Undefinierte auf Referenzfehler, die nur mit g aufgetreten sind.

Alternativer Ansatz

Wenn Sie gfortran zum Verknüpfen bevorzugen, können Sie das gleiche Ergebnis erzielen, indem Sie das Flag -lstdc übergeben:

gfortran main.o print_hi.o -o main -lstdc

Dieses Flag bindet die erforderlichen C-Bibliotheken (-lstdc) während der Verknüpfung ein und adressiert die undefinierten Referenzen, die bei ausschließlicher Verwendung von gfortran auftreten.

Durch die Verwendung der entsprechenden Verknüpfungsflags können Sie C- und Fortran-Binärdateien erfolgreich zu einem voll funktionsfähigen Programm kombinieren.

Das obige ist der detaillierte Inhalt vonWie verknüpfe ich Fortran- und C-Binärdateien, ohne dass Bibliotheksabhängigkeiten fehlen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage