Compilation et #pragma comment(lib,"malib.lib") ?
Bonjour à tous,
Imaginons que je dispose d'une librairie c'est à dire du fichier header "librairie.h" et du "librairie.o" issu de la compilation de "librairie.cpp" contenant l'implémentation à proprement parler. Supposons aussi que la librairie ainsi créée fournisse une fonction
Code:
1 2
|
void librairie_func(void); |
Je crée maintenant le fichier "main.cpp" suivant que je compile et lie :
Code:
1 2 3 4 5 6 7 8 9 10
|
#include "librairie.h"
#pragma comment(lib, "librairie.o")
int main(int argcp, char **argv)
{
librairie_func();
return 0;
} |
J'aimerais savoir si la ligne
Code:
1 2
|
#pragma comment(lib,"librairie.o") |
est valable (y a-t-il une différence entre un .o et un .lib ?) et si le cas échéant elle permet de s'affranchir au moment du linkage de rajouter le fichier objet "librairie.o" (j'avais cru comprendre que cette ligne indiquait au linker de lier automatiquement ce fichier au projet...) ?... Manifestement la réponse à ma question doit être non (j'ai évidemment essayé et au moment du linkage les fonctions de la librairie sont non reconnues) mais à quoi sert alors la fameuse ligne citéé auparavant ?
Merci pour votre aide.
PS : je code sous Windows avec g++.