IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Probleme avec loadlibrary


Sujet :

MATLAB

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 52
    Points : 48
    Points
    48
    Par défaut Probleme avec loadlibrary
    salut
    j ai un capteur et j aimerais gerer les donnes du capteur via matlab. pour cela j utilse la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    loadlibrary('se2usbapi.dll', 'se2usbapi.h', 'mfilename', 'monfichierproto')
    mais je recois un message d erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    There was an error loading the library "C:\DLLs\se2usbapi.dll"
    j ai essaye plusieur propositions des forums et tutoriels et j ai toujour le meme message.
    j aimerai savoir s il est possible de modifier les code
    se2usbapi.h
    pour qu' il puisse fonctioner avec
    merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Le message d'erreur est-il complet ?

    As-tu les sources (C ou autres) de cette bibliothèque ?
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  3. #3
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 52
    Points : 48
    Points
    48
    Par défaut
    Le message d'erreur est-il complet ?
    voici la suite du message

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Le module spécifié est introuvable
    As-tu les sources (C ou autres) de cette bibliothèque ?
    non je n ai pas les souces de la biblotheque. j ai juste les fichier.h et .dll dans le CD qui a ete livre avec le capteur
    merci

  4. #4
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 302
    Points : 52 884
    Points
    52 884
    Par défaut
    Le fichier .h se trouve bien dans le même dossier que le fichier .dll ?
    Ingénieur indépendant en mécatronique - Conseil, conception et formation
    • Conception mécanique (Autodesk Fusion 360)
    • Impression 3D (Ultimaker)
    • Développement informatique (Python, MATLAB, C)
    • Programmation de microcontrôleur (Microchip PIC, ESP32, Raspberry Pi, Arduino…)

    « J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" » (Saint Huck)

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 52
    Points : 48
    Points
    48
    Par défaut
    mon fichier.h se trouve bien ds le meme dossier que le fichier.dll

  6. #6
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2006
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2006
    Messages : 52
    Points : 48
    Points
    48
    Par défaut erreur avec la methode mex
    Salut
    j ai abandoner l idée d´utiliser j ai programmé une Dll en Visual c++ 2010. je compile mon programme sans erreur sous vc++ mais sous matlab j´ai l´erreur suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    >> mex -v GetSensor.cpp
    
    -> Default options filename found in C:\Documents and Settings\er\Application Data\MathWorks\MATLAB\R2011b 
    ---------------------------------------------------------------- 
    ->    Options file           = C:\Documents and Settings\er\Application Data\MathWorks\MATLAB\R2011b\mexopts.bat 
          MATLAB                 = C:\PROGRA~1\MATLAB\R2011B 
    ->    COMPILER               = lcc 
    ->    Compiler flags: 
             COMPFLAGS           = -c -I"C:\PROGRA~1\MATLAB\R2011B\sys\lcc\include" -DMATLAB_MEX_FILE -noregistrylookup 
             OPTIMFLAGS          = -DNDEBUG 
             DEBUGFLAGS          = -g4 
             arguments           =  
             Name switch         = -Fo 
    ->    Pre-linking commands   =  
    ->    LINKER                 = lcclnk 
    ->    Link directives: 
             LINKFLAGS           =  -tmpdir "." -dll "C:\PROGRA~1\MATLAB\R2011B\extern\lib\win32\lcc\mexFunction.def" -L"C:\PROGRA~1\MATLAB\R2011B\sys\lcc\lib" -libpath "C:\PROGRA~1\MATLAB\R2011B\extern\lib\win32\lcc" "C:\DOCUME~1\ERIC~1.LAN\LOCALS~1\TEMP\MEX_JU~1\templib2.obj" 
             LINKDEBUGFLAGS      =  
             LINKFLAGSPOST       = libmx.lib libmex.lib libmat.lib 
             Name directive      = -o "GetSensor.mexw32" 
             File link directive =  
             Lib. link directive =  
             Rsp file indicator  = @ 
    ->    Resource Compiler      = lrc -I"C:\PROGRA~1\MATLAB\R2011B\sys\lcc\include" -noregistrylookup -fo"mexversion.res" 
    ->    Resource Linker        =  
    ---------------------------------------------------------------- 
     
     
    --> lcc  -c -I"C:\PROGRA~1\MATLAB\R2011B\sys\lcc\include" -DMATLAB_MEX_FILE -noregistrylookup -FoC:\DOCUME~1\ER~1.L\LOCALS~1\TEMP\MEX_JU~1\GetSensor.obj -IC:\PROGRA~1\MATLAB\R2011B\extern\include -IC:\PROGRA~1\MATLAB\R2011B\simulink\include -DNDEBUG -DMX_COMPAT_32 GetSensor.cpp 
     
    lcc preprocessor warning: .\GetSensor.h:19 GetSensor.cpp:1 No newline at end of file 
    Warning GetSensor.cpp: 88  local `int j' is not referenced 
    Warning GetSensor.cpp: 88  local `int i' is not referenced 
    0 errors, 3 warnings 
     
    --> lcc -c -I"C:\PROGRA~1\MATLAB\R2011B\sys\lcc\include" -DMATLAB_MEX_FILE -noregistrylookup "C:\PROGRA~1\MATLAB\R2011B\sys\lcc\mex\lccstub.c" -Fo"C:\DOCUME~1\ER~1.L\LOCALS~1\TEMP\MEX_JU~1\templib2.obj" 
     
        Contents of C:\DOCUME~1\ER~1.L\LOCALS~1\TEMP\MEX_JU~1\mex_tmp.rsp: 
      C:\DOCUME~1\ER~1.L\LOCALS~1\TEMP\MEX_JU~1\GetSensor.obj 
     
     
    --> lcclnk -o "GetSensor.mexw32"  -tmpdir "." -dll "C:\PROGRA~1\MATLAB\R2011B\extern\lib\win32\lcc\mexFunction.def" -L"C:\PROGRA~1\MATLAB\R2011B\sys\lcc\lib" -libpath "C:\PROGRA~1\MATLAB\R2011B\extern\lib\win32\lcc" "C:\DOCUME~1\ER~1.L\LOCALS~1\TEMP\MEX_JU~1\templib2.obj" -s @C:\DOCUME~1\ER~1.L\LOCALS~1\TEMP\MEX_JU~1\MEX_TMP.RSP  libmx.lib libmex.lib libmat.lib 
     
    Specified export _mexFunction is not defined 
    Missing exports. Aborting 
     
      C:\PROGRA~1\MATLAB\R2011B\BIN\MEX.PL: Error: Link of 'GetSensor.mexw32' failed. 
     
    Error using mex (line 206)
    Unable to complete successfully.
    je n arrive pas a comprendre pourquoi j ai cette erreur.
    j aimerais bien avoir une idée de ce qui peut avoir genere cette erreur.
    merci

  7. #7
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Le message
    Specified export _mexFunction is not defined 
    signifie que tu n'a pas créé la fonction MEX dans ton fichier qui fait le lien entre le C++ et MATLAB.
    Je t'invite à faire une recherche sur le forum ainsi que regarder la documentation afin d'assimiler la syntaxe.

Discussions similaires

  1. Probleme avec la copie des surfaces
    Par Black_Daimond dans le forum DirectX
    Réponses: 3
    Dernier message: 09/01/2003, 10h33
  2. Problèmes avec le filtrage des ip
    Par berry dans le forum Réseau
    Réponses: 9
    Dernier message: 30/12/2002, 07h51
  3. probleme avec la touche F10
    Par b.grellee dans le forum Langage
    Réponses: 2
    Dernier message: 15/09/2002, 22h04
  4. Probleme avec fseek
    Par Bjorn dans le forum C
    Réponses: 5
    Dernier message: 04/08/2002, 07h17
  5. [Kylix] probleme avec un imagelist
    Par NicoLinux dans le forum EDI
    Réponses: 4
    Dernier message: 08/06/2002, 23h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo