Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Memautkan Fortran dan Binari C Tanpa Ketergantungan Perpustakaan Hilang?

Bagaimana untuk Memautkan Fortran dan Binari C Tanpa Ketergantungan Perpustakaan Hilang?

Linda Hamilton
Linda Hamiltonasal
2024-10-26 03:28:28872semak imbas

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

Menghubungkan Fortran dan Perduaan C: Menyelesaikan Ketidakpadanan Perpustakaan

Apabila membangunkan projek yang melibatkan kedua-dua kod C dan Fortran, ia menjadi perlu untuk memautkan terhasil binari bersama-sama untuk mencipta program yang padu. Walau bagaimanapun, percubaan untuk menyusun projek sedemikian menggunakan sama ada g atau gfortran sahaja boleh membawa kepada ralat kerana kehilangan kebergantungan perpustakaan.

Untuk menyelesaikan isu ini, adalah penting untuk menggunakan bendera pemautan yang sesuai yang menentukan perpustakaan yang diperlukan untuk bahasa lain.

Penyelesaian untuk Memautkan Perduaan C dan Fortran

Apabila memautkan projek yang melibatkan C dan Fortran, ikut langkah berikut:

  • Gunakan g untuk menyusun kod sumber C: g -c main.cpp -o main.o
  • Gunakan gfortran untuk menyusun kod sumber Fortran: gfortran -c print_hi.f90 -o print_hi.o
  • Pautkan fail objek yang disusun menggunakan g : g main.o print_hi.o -o main -lgfortran

Arahan ini akan menyertakan pustaka Fortran yang diperlukan (-lgfortran) semasa memaut, dengan itu menyelesaikan masalah yang tidak ditentukan ralat rujukan yang dihadapi dengan g sahaja.

Pendekatan Alternatif

Jika anda lebih suka menggunakan gfortran untuk memaut, anda boleh mencapai hasil yang sama dengan melepasi bendera -lstdc:

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

Bendera ini akan menggabungkan perpustakaan C yang diperlukan (-lstdc ) semasa memaut, menangani rujukan tidak jelas yang dihadapi semasa menggunakan gfortran secara eksklusif.

Dengan menggunakan bendera pemautan yang sesuai, anda boleh berjaya menggabungkan perduaan C dan Fortran ke dalam atur cara yang berfungsi sepenuhnya.

Atas ialah kandungan terperinci Bagaimana untuk Memautkan Fortran dan Binari C Tanpa Ketergantungan Perpustakaan Hilang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn