Comment compiler des fichiers C/C++ avec une bibliothèque externe ?

Introduction

Cette page explique comment compiler un projet C avec une bibliothèque externe en ligne de commande. Dans la suite, nous prenons l'exemple de trois fichiers, un main.c et une bibliothèque composée de deux fichiers lib.c et lib.h :

project
|- main.c
|- lib
|   |-lib.c
|   |-lib.h

Notez que cet exemple est basé sur des fichiers .c, mais qu'il fonctionne également avec des fichiers .cpp (orientés objet).

Voici les fichiers sources :

main.c

#include "lib.h"

int main() {
    fct();
}

lib/lib.h

#include <stdio.h>

void fct();

lib/lib.c

#include "lib.h"

void fct() {
    printf("This is printed from a function in an external library\n");
}

Compilation en ligne de commande

En supposant que vous vous trouviez dans le dossier racine du projet, la ligne suivante compile l'ensemble du projet :

g++ -o output.exe "main.c" "lib/lib.c" -I "lib"

Voici le résulat:

fifi@~/project$ g++ -o output.exe "main.c" "lib/lib.c" -I "lib"
fifi@~/project$ ./output.exe 
This is printed from a function in an external library
fifi@~/project$

Voir aussi


Dernière mise à jour : 14/06/2023