Bonjour,
J'ai une library créé avec gcc (c'est un lib.a) et j'ai besoin de l'intégrer dans un projet BDS6 C++ de borland qui attend un *.lib. Exist-il des convertisseur de ce type?
Merci d'avance de votre aide
Bonjour,
J'ai une library créé avec gcc (c'est un lib.a) et j'ai besoin de l'intégrer dans un projet BDS6 C++ de borland qui attend un *.lib. Exist-il des convertisseur de ce type?
Merci d'avance de votre aide
Bonsoir uriotcea,
En ligne de commande:
Autant générer ta lib directement, plutôt que de chercher à convertir ta lib de GCCimplib NomDeLaLib.lib NomDeLaDll.dll
Cordialement,
Benjamin
Merci, je ne comprend pas bien ta fonction! Moi je veux convertir une lib.a de gcc vers une lib.lib compatible borlandc
Salut, je ne connais pas gcc, mais est-ce qu'il existe un moyen de généré un fichier .DLL?
Si oui, après, va jeter un coup d'œil sur ceci: http://lfe.developpez.com/DLL/
Bonsoir uriotcea
Normalement, ta librairie n'est rien d'autre qu'une bibliothèque de liens dynamiques vers les différentes méthodes d'une dll de base.
J'entends par là, que ton '.a', a sans doute été généré suite à la compilation de ta dll sous gcc, non?
Plutôt que de convertir ta librairie '.a' générée par GCC, en librairie '.lib' intégrable dans ton projet builder, je te propose de travailler directement sur ta dll, pour générer toi même la librairie.
Donc, voilà comment je vois les choses:
* Tu cherches la dll associé à ta lib '.a'
* T'ouvres une fenêtre de commande windows
* Tu vas jusqu'au répertoire de ta dll
* Tu tapes: implib nom_deladll.lib nom_deladll.dll
Et là, tu récupères un fichier librairie '.lib'
Pour info, 'implib' est un petit utilitaire fournie avec l'installation de Builder, donc pas besoin de le télécharger.
En espérant avoir étais un peu plus clair.
Cordialement,
BEnjamin
Merci de vos réponse.
j'ai donc suivit la procédure implib depuis la dll.
J'ai inclu dans mon projet le *.lib et aussi la dll, ca mange pas de pain
J'ai inclu dans mon fichier *.cpp la ligne:
extern "C" __declspec(dllimport) void mafunction()
Et j'ai une erreur au linkage me dissant "non resolu reference" pour cette fonction!!!
Qu'ai je oublié ?
Bonjour,
Avec un '_stdcall', cela devrait mieux fonctionner, je pense.
Cordialement,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 extern "C" __declspec(dllimport) void _stdcall mafunction(void);
Benjamin
Ok merci ca fonctionne. Le probléme c'est qu'à la base si je travaillé en lib static sous borlandc c'étais pour ne pas avoir à trimbaler des dlls de partout.
Partager