Fortran および C バイナリと GCC のリンク
gcc を使用して C と Fortran コードを接続するには、特定の手順に従う必要があります。
次のコードがあるとします。
// print_hi.f90 subroutine print_hi() bind(C) implicit none write(*,*) "Hello from Fortran." end subroutine print_hi // main.cpp #include <iostream> extern "C" void print_hi(void); using namespace std; int main() { print_hi(); cout << "Hello from C++" << endl; return 0; }
gfortran -c print_hi.f90 -o print_hi.o g++ -c main.cpp -o main.o
を使用して個々のオブジェクト ファイルをコンパイルした後、これらのバイナリをリンクするには、適切なコードを含める必要があります。図書館。 g を使用する場合は、以下を使用して Fortran ライブラリを追加する必要があります。
g++ main.o print_hi.o -o main -lgfortran
これには、Fortran 関数に必要なライブラリが含まれています。
あるいは、gfortran を使用している場合は、C を含めることができます。 library:
gfortran main.o print_hi.o -o main -lstdc++
これらのライブラリを含めることで、シンボルの適切な解決が保証され、リンクされたバイナリのスムーズな実行が可能になります。
以上がGCC を使用して Fortran と C バイナリをリンクするには?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。