Soutenez-nous
Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Membre actif
    Inscrit en
    septembre 2003
    Messages
    383
    Détails du profil
    Informations forums :
    Inscription : septembre 2003
    Messages : 383
    Points : 160
    Points
    160

    Par défaut SDL 1.2.15 et VC6 incompatible ?

    Bonjour,
    Je viens de passer de la SDL 1.2.14 à la 1.2.15 (je laisse toujours un peut de temps avant de upgrader pour être sûr que tout marche bien, question de maturité)
    Pour info, j'utilise un vieux compilo : VC6 (pas pour une question de maturité, c'est que j'ai une machine pas super recente et que malgres tout vc6 marche super bien dessus, merci visual assist x au passage, bref...)

    En v 1.2.14, ca compile bien,
    Donc je met a jour ma sdl (fichiers .h, .dll et .lib), et paf, ca ne compile plus...

    Code :
    1
    2
    3
    4
    5
    6
    SDLmain.lib(SDL_win32_main.obj) : warning LNK4044: unrecognized option "manifestdependency:type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b'"; ignored
    MSVCRTD.lib(cinitexe.obj) : warning LNK4098: defaultlib "msvcrt.lib" conflicts with use of other libs; use /NODEFAULTLIB:library
    SDLmain.lib(SDL_win32_main.obj) : error LNK2001: unresolved external symbol ___security_cookie
    SDLmain.lib(SDL_win32_main.obj) : error LNK2001: unresolved external symbol @__security_check_cookie@4
    SDLmain.lib(SDL_win32_main.obj) : error LNK2001: unresolved external symbol __alloca_probe_16
    SDLmain.lib(SDL_win32_main.obj) : error LNK2001: unresolved external symbol __imp____iob_func
    Il semblerait donc que depuis la 1.2.15, VC6 ne soit plus supporté ?
    pourtant dans la doc (visualC.htm) il est bien ecrit : "Using SDL with Microsoft Visual C++ 5,6 and 7" (au passage, il doit y avoir plus dinosore que moi pour utiliser vc5)

    Quelqu'un a t'il déjà rencontré ce genre de probleme ?
    Merci.

  2. #2
    Responsable 2D/3D/Jeux

    Avatar de LittleWhite
    Homme Profil pro Alexandre Laurent
    Ingénieur développement logiciels
    Inscrit en
    mai 2008
    Messages
    14 487
    Détails du profil
    Informations personnelles :
    Nom : Homme Alexandre Laurent
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2008
    Messages : 14 487
    Points : 64 976
    Points
    64 976

    Par défaut

    Bonjour,

    Je ne pense pas vraiment que ce soit directement lié à la SDL.
    Avez vous effectué un "rebuild all" ?

    Sinon, avec une recherche google de l'erreur on tombe sur :

    http://www.pcreview.co.uk/forums/unr...-t1428747.html
    http://support.microsoft.com/kb/894573

    On peut donc tenter de rajouter l'option /verbose pour avoir plus d'informations.

    * Not use arrays in any functions that call (or end up calling) CRT_INIT,
    for example, use _alloca instead.
    * Let the CRT initialize normally. Don't specify your own entry point, use
    DllMain instead (and don't call CRT_INIT).
    Soit :
    Ne pas utiliser de tableaux dans les fonctions qui appelle CRT_INIT (on peut utiliser _alloca à la place).
    Ne pas spécifier de point d'entre et utiliser DllMain (ne pas appeler CRT_INIT).

    J'espère que cela peut aidé, car ce n'est pas ultra courant
    Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi
    La rubrique a aussi un blog !

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre actif
    Inscrit en
    septembre 2003
    Messages
    383
    Détails du profil
    Informations forums :
    Inscription : septembre 2003
    Messages : 383
    Points : 160
    Points
    160

    Par défaut

    Citation Envoyé par LittleWhite Voir le message
    Bonjour,
    Soit :
    Ne pas utiliser de tableaux dans les fonctions qui appelle CRT_INIT (on peut utiliser _alloca à la place).
    Ne pas spécifier de point d'entre et utiliser DllMain (ne pas appeler CRT_INIT).

    J'espère que cela peut aidé, car ce n'est pas ultra courant
    honnetement, je ne pense pas que ce soit celà, en effet, je n'apelle pas CRT_INIT...
    Mais en fait, je n'ai pas modifié une ligne de code, j'ai juste mis à jour sdl (en remplacant le fichier .lib par le nouveau, idem pour le dll et pour les fichiers header de sdl).
    c'est une operation que je fait regulierement depuis au moins la 1.2.6.
    en revenant (merci svn) à la version 1.2.14, ca marche. mais c'est domage, il y a quelques bugfix dans la 1.2.15 qui valent le coups.

    google ne m'avait pas aidé
    Merci pour ta tentative.

  4. #4
    Responsable 2D/3D/Jeux

    Avatar de LittleWhite
    Homme Profil pro Alexandre Laurent
    Ingénieur développement logiciels
    Inscrit en
    mai 2008
    Messages
    14 487
    Détails du profil
    Informations personnelles :
    Nom : Homme Alexandre Laurent
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : mai 2008
    Messages : 14 487
    Points : 64 976
    Points
    64 976

    Par défaut

    L'histoire du CRT_INIT, c'est avant même le même, j'ose croire.
    Sinon, avez vous tenter l'option /verbose que j'ai cru voir présentée dans les liens.
    J'imagine que le rebuild all a été effectué plus d'une fois. Peut être en néttoyant les fichiers intermédiaires du projet ? (les .pcb ou autre truc de VS).
    Vous souhaitez participer à la rubrique 2D / 3D / Jeux ? Contactez-moi
    La rubrique a aussi un blog !

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •