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

VC++ .NET Discussion :

Problème de compilation avec visual express 2005


Sujet :

VC++ .NET

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Août 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 213
    Points : 103
    Points
    103
    Par défaut Problème de compilation avec visual express 2005
    Bonjour,
    Anciennement sous VC++6, je souhaite passer sous Visual C++ express 2005, mais sa fait des heures et des heures que j'essai de compiler un exemple simple utilisant la SDL et OpenGl sans succés, alors que j'ai pourtant essayé pleins de tutos sur la configuration de visual.
    Actuellement l'erreur de linkage est le suivant :

    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
     
    ------ Début de la génération : Projet : hhgjh, Configuration : Debug Win32 ------
    Édition des liens en cours...
    msvcrt.lib(ti_inst.obj) : error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" (??0type_info@@AAE@ABV0@@Z) déjà défini(e) dans LIBCMTD.lib(typinfo.obj)
    msvcrt.lib(ti_inst.obj) : error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" (??4type_info@@AAEAAV0@ABV0@@Z) déjà défini(e) dans LIBCMTD.lib(typinfo.obj)
    msvcrt.lib(MSVCR80.dll) : error LNK2005: _exit déjà défini(e) dans LIBCMTD.lib(crt0dat.obj)
    msvcrt.lib(MSVCR80.dll) : error LNK2005: _strrchr déjà défini(e) dans LIBCMTD.lib(strrchr.obj)
    msvcrt.lib(MSVCR80.dll) : error LNK2005: _fprintf déjà défini(e) dans LIBCMTD.lib(fprintf.obj)
    msvcrt.lib(MSVCR80.dll) : error LNK2005: _fclose déjà défini(e) dans LIBCMTD.lib(fclose.obj)
    msvcrt.lib(MSVCR80.dll) : error LNK2005: __isctype déjà défini(e) dans LIBCMTD.lib(isctype.obj)
    LIBCMTD.lib(crt0init.obj) : warning LNK4098: conflit entre la bibliothèque par défaut 'msvcrt.lib' et les autres bibliothèques ; utilisez /NODEFAULTLIB:library
    C:\Documents and Settings\Alex\Bureau\WINDOW_glut\hhgjh\Debug\hhgjh.exe : fatal error LNK1169: un ou plusieurs symboles définis à différentes reprises ont été rencontrés
    Le journal de génération a été enregistré à l'emplacement "file://c:\Documents and Settings\Alex\Bureau\WINDOW_glut\hhgjh\Debug\BuildLog.htm"
    hhgjh - 8 erreur(s), 1 avertissement(s)
    ========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
    A savoir que j'ai bien installé le PSDK et configuré les répertoires sous visual.
    J'ai également essayé de mettre NODEFAULTLIB mais dans ce cas j'obtient 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
     
    ------ Début de la génération : Projet : hhgjh, Configuration : Debug Win32 ------
    Édition des liens en cours...
    sdlbase.obj : error LNK2019: symbole externe non résolu _exit référencé dans la fonction _shutdownApp
    sdlbase.obj : error LNK2019: symbole externe non résolu __RTC_CheckEsp référencé dans la fonction _shutdownApp
    sdlbase.obj : error LNK2001: symbole externe non résolu __RTC_Shutdown
    sdlbase.obj : error LNK2001: symbole externe non résolu __RTC_InitBase
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glEnable@4 référencé dans la fonction _initGL
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glShadeModel@4 référencé dans la fonction _initGL
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glClearColor@16 référencé dans la fonction _initGL
    sdlbase.obj : error LNK2001: symbole externe non résolu __fltused
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_GetTicks référencé dans la fonction _updateTimer
    sdlbase.obj : error LNK2019: symbole externe non résolu _gluPerspective@32 référencé dans la fonction _reshape
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glLoadIdentity@0 référencé dans la fonction _reshape
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glMatrixMode@4 référencé dans la fonction _reshape
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glViewport@16 référencé dans la fonction _reshape
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glEnd@0 référencé dans la fonction _display
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glVertex3f@12 référencé dans la fonction _display
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glColor3f@12 référencé dans la fonction _display
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glBegin@4 référencé dans la fonction _display
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glRotated@32 référencé dans la fonction _display
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glTranslated@24 référencé dans la fonction _display
    sdlbase.obj : error LNK2019: symbole externe non résolu __imp__glClear@4 référencé dans la fonction _display
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_WM_ToggleFullScreen référencé dans la fonction _handleKeyPress
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_GetMouseState référencé dans la fonction _mouseMove
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_GetModState référencé dans la fonction _mouseMove
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_GL_SwapBuffers référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_PollEvent référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_EnableKeyRepeat référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_WM_SetCaption référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_SetVideoMode référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_GL_SetAttribute référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_GetVideoInfo référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _atexit référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_Quit référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _fprintf référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu ___iob_func référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_GetError référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu _SDL_Init référencé dans la fonction _SDL_main
    sdlbase.obj : error LNK2019: symbole externe non résolu @_RTC_CheckStackVars@8 référencé dans la fonction _SDL_main
    LINK : error LNK2001: symbole externe non résolu _WinMainCRTStartup
    C:\Documents and Settings\Alex\Bureau\WINDOW_glut\hhgjh\Debug\hhgjh.exe : fatal error LNK1120: 38 externes non résolus
    Le journal de génération a été enregistré à l'emplacement "file://c:\Documents and Settings\Alex\Bureau\WINDOW_glut\hhgjh\Debug\BuildLog.htm"
    hhgjh - 39 erreur(s), 0 avertissement(s)
    ========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========

  2. #2
    Membre régulier

    Profil pro
    Inscrit en
    Août 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 213
    Points : 103
    Points
    103
    Par défaut
    Ce problème est en partie résolu en faisant autrement.
    Par contre, j'etais justement passé de visual C++6 à 2005 à cause de la librairie math pas à jour. Mais justement, mais dans la version 2005 il n'y a pas les fonctions "log" et "round" donc je ne peux pas compiler.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    c:\documents and settings\alex\bureau\international karate project opengl vc express\ik+\ctext.cpp(5) : error C2668: 'log' : appel ambigu à une fonction surchargée
    c:\documents and settings\alex\bureau\international karate project opengl vc express\ik+\ctext.cpp(6) : error C3861: 'round' : identificateur introuvable
    Pourtant ces fonctions marchent correctement sous code block???

  3. #3
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    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 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Certaines fonctions pour les nombres flottants sont déclarées dans float.h (un autre header standard) sous Visual, au lieu de math.h.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Membre régulier

    Profil pro
    Inscrit en
    Août 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 213
    Points : 103
    Points
    103
    Par défaut
    J'ai inclu la librairie, mais je n'ai pas trouvé cette fonction...

  5. #5
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    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 369
    Points : 41 519
    Points
    41 519
    Par défaut
    log() existe, elle existe même trop (elle est surchargée et le compilo C++ ne sait pas quelle surcharge prendre : C'est à toi de rajouter un indication, généralement un cast d'un paramètre).

    Quant à round(), je ne la trouve nulle part dans l'aide de Microsoft. Regarde si floor() ou ceil() ne convient pas...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre régulier

    Profil pro
    Inscrit en
    Août 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 213
    Points : 103
    Points
    103
    Par défaut
    Oui, pour log c'est juste une erreur de ma part pour le cast.
    Sinon, pour le round je veux bien me débrouiller autrement, mais quand je regarde les membres de la classe math sur le site de chrosoft la fonction existe belle et bien ???
    http://msdn.microsoft.com/library/fr...mberstopic.asp

  7. #7
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    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 369
    Points : 41 519
    Points
    41 519
    Par défaut
    C'est du .Net, ça...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  8. #8
    Membre régulier

    Profil pro
    Inscrit en
    Août 2006
    Messages
    213
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 213
    Points : 103
    Points
    103
    Par défaut
    Ah oui, autant pour moi...
    Je vais changer de fonction et puis je serai tranquille. Merci de ton aide.

Discussions similaires

  1. [MASM 8] Problème d'installation avec VC++ Express 2005
    Par ericmelody dans le forum x86 32-bits / 64-bits
    Réponses: 2
    Dernier message: 27/09/2007, 23h13
  2. Réponses: 2
    Dernier message: 15/03/2007, 12h10
  3. problème de link avec visual C++ 2005
    Par superC dans le forum OpenGL
    Réponses: 2
    Dernier message: 27/02/2007, 10h35
  4. Compilation avec Visual C++ 2005 Express pour avoir un module python
    Par Freyja dans le forum Déploiement/Installation
    Réponses: 6
    Dernier message: 13/07/2006, 12h12
  5. Compilation avec Visual Studio 2005
    Par LordBob dans le forum MFC
    Réponses: 3
    Dernier message: 14/04/2006, 20h14

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