Salut,
C'est peut etre un problème récurrent sur le net mais après des heures de recherche je n'ai toujours pas trouvé de solution.
Je dois utiliser une librairie de commande d'un robot pour un projet d'étude, oppaccess. On m'a fourni 3 fichiers oppaccess.dll, oppaccess.lib et oppaccess.h
Pour l'exemple voici un programme minimaliste qui essaye de lancer une des fonctions de la librairie
#include <cstdlib>
#include <iostream>
#include "wlib/oppaccess.h"
using namespace std;
int main(int argc, char *argv[])
{
oppaccessStartup();
system("PAUSE");
return EXIT_SUCCESS;
}Je spécifie correctement dans les options de linkage la librairie "-Lwlib -lOppAccess" (je suis sous dev c++). J'ai ajouté "extern "C" __declspec (dllimport)" devant la déclaration des fonctions dans le .h
Le programme compile mais ne linke pas, voici l'erreur:
main2.o(.text+0x12b):main2.cpp: undefined reference to `_imp__oppaccessStartup@0'
J'ai entendu parler des .def mais cela ne fonctionne pas non plus
LIBRARY oppaccess.dll
DESCRIPTION 'oppaccess'
EXPORTS
; Explicitly exported initialization routine
oppaccessStartup = _imp__oppaccessStartup@0Peut etre faut-il "dire" au linker quel fichier .def utiliser mais je n'ai pas trouvé l'info, j'ai cru comprendre qu'une le nommant oppaccess.def cela suffisait
Merci pour votre aide