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

Langage C++ Discussion :

error LNK2001: unresolved external symbol - compilation d'un dll


Sujet :

Langage C++

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 47
    Points : 43
    Points
    43
    Par défaut error LNK2001: unresolved external symbol - compilation d'un dll
    Bonjour,
    j'ai un projet C++ sous VC++ 6, une dll.
    ça ne compile pas, j'ai comme erreur :

    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
     
    Linking...
       Creating library Debug/myDll.lib and object Debug/myDll.exp
    LINK : warning LNK4098: defaultlib "MSVCRT" conflicts with use of other libs; use /NODEFAULTLIB:library
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol ___kmpc_global_thread_num
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol ___kmpc_ok_to_fork
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol ___kmpc_push_num_threads
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol ___kmpc_fork_call
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol ___kmpc_serialized_parallel
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol ___kmpc_end_serialized_parallel
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol ___kmpc_for_static_init_4
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol ___kmpc_for_static_fini
    mkl_intel_thread_dll.lib(vml_threading_templates.obj) : error LNK2001: unresolved external symbol _omp_get_num_procs
    F:\myDll.dll : fatal error LNK1120: 9 unresolved externals
    Error executing link.exe.
     
    myDll.dll - 10 error(s), 1 warning(s)
    mon projet (myDll.dll) utilise des librairies tel que : mkl_lapack.lib mkl_c.lib mkl_p3.lib, mkl_intel_thread_dll.lib...etc

    vu ces erreurs, si j'ai bien compris : je suppose que qu'il ya des variables (_omp_get_num_procs...) qui sont en externe, mais on ne trouve pas ou ils sont définies !!!
    en regardant sur le net, ce genre d'erreur arrive souvent quand il manque une lib ! sauf que moi je ne sait pas quelle lib me manque d'autant plus que ces variables ne sont pas les miennes !!! elle doivent être utilisées dans des lib que j'utilise !
    Merci de m'aider.

  2. #2
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Mai 2007
    Messages
    11 517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mai 2007
    Messages : 11 517
    Points : 50 367
    Points
    50 367
    Par défaut
    Je n'ai plus VC6 sous la main mais cela ressemble à un conflit de compilation.

    La DLL compilée en mode multi thread (/Md), quand je vois des fonctions qui s'appellent kmpc_global_thread_num, et le projet compilé en mode mono thread

    Vérifie tes options de compilation et n'hésite pas à faire un rebuild all

  3. #3
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 582
    Points
    41 582
    Par défaut
    Cela ressemble à un conflit entre les options de CRT de ton projet et celles des bibliothèques statiques qu'il utilise: Quelque part, au moins un projet est en /MD (multithreaded DLL), tandis qu'au moins un autre projet est en /MT (multithreaded static) ou /ML (single-threaded static)...

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 47
    Points : 43
    Points
    43
    Par défaut
    Bonjour,
    Merci pour vos réponses, le problème est résolu.
    je n'avait pas les bonnes librairies et les .h qui vont avec.
    une fois récupérés, le projet compile.
    Merci encore.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Error LNK2001 "unresolved external symbol _MAIN__"
    Par rihab1509 dans le forum Fortran
    Réponses: 2
    Dernier message: 06/05/2009, 23h00
  2. Link code error LNK2001: unresolved external symbol
    Par Benjijmin dans le forum Fortran
    Réponses: 4
    Dernier message: 02/12/2008, 12h24
  3. error LNK2001: unresolved external symbol _errno
    Par stof dans le forum Visual C++
    Réponses: 4
    Dernier message: 10/08/2007, 15h40
  4. Réponses: 2
    Dernier message: 05/06/2007, 09h37
  5. [ error LNK2001: unresolved external symbol]
    Par ARachid dans le forum MFC
    Réponses: 2
    Dernier message: 18/05/2007, 13h33

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