Maison > développement back-end > C++ > Comment lier les binaires Fortran et C sans manquer de dépendances de bibliothèque ?

Comment lier les binaires Fortran et C sans manquer de dépendances de bibliothèque ?

Linda Hamilton
Libérer: 2024-10-26 03:28:28
original
936 Les gens l'ont consulté

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

Lier les binaires Fortran et C : résoudre les incompatibilités de bibliothèque

Lors du développement de projets impliquant à la fois du code C et Fortran, il devient nécessaire de lier le les binaires résultants ensemble pour créer un programme cohérent. Cependant, tenter de compiler de tels projets en utilisant g ou gfortran seul peut entraîner des erreurs dues à des dépendances de bibliothèque manquantes.

Pour résoudre ces problèmes, il est essentiel d'utiliser l'indicateur de liaison approprié qui spécifie la bibliothèque requise pour le autre langage.

Solution pour lier les binaires C et Fortran

Lors de la liaison d'un projet impliquant C et Fortran, suivez ces étapes :

  • Utilisez g pour compiler le code source C : g -c main.cpp -o main.o
  • Utilisez gfortran pour compiler le code source Fortran : gfortran -c print_hi.f90 -o print_hi.o
  • Liez les fichiers objets compilés en utilisant g : g main.o print_hi.o -o main -lgfortran

Cette commande inclura les bibliothèques Fortran nécessaires (-lgfortran) lors de la liaison, résolvant ainsi le problème non défini erreurs de référence rencontrées avec g seul.

Approche alternative

Si vous préférez utiliser gfortran pour la liaison, vous pouvez obtenir le même résultat en passant l'indicateur -lstdc :

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

Cet indicateur incorporera les bibliothèques C requises (-lstdc ) lors de la liaison, traitant des références non définies rencontrées lors de l'utilisation exclusive de gfortran.

En utilisant les indicateurs de liaison appropriés, vous pouvez combiner avec succès les binaires C et Fortran en un programme entièrement fonctionnel.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal