8Fermer10
deleted2Le 01/11/2011 à 15:41
Merci beaucoup pour tes conseils. Effectivement, j'étais allé voir dans le header de la SDL pour voir ce qui s'y passait, mais je n'ai pas su pousser les déductions aussi loin.

J'ai donc suivi ce que tu as dit :
- j'ai rajouté SDLmain.lib et SDL.lib dans les entrées du linker (l'ordre n'a apparemment pas d'importance ?)
- j'ai dit au linker qu'on fabriquait une application Windows (/SUBSYSTEM:WINDOWS)

Et là, deux erreurs :
1>MSVCRTD.lib(cinitexe.obj) : warning LNK4098: conflit entre la bibliothèque par défaut 'msvcrt.lib' et les autres bibliothèques ; utilisez /NODEFAULTLIB:library
1>SDLmain.lib(SDL_win32_main.obj) : error LNK2019: symbole externe non résolu _SDL_main référencé dans la fonction _main

Je prends les erreurs dans l'ordre, d'abord le conflit : comme l'option conseillée est un peu trop bourrine, j'ai ajouté la bibliothèque en cause (msvcrt.lib) aux bibliothèques par défaut spécifiquement ignorées.

Je recompile, le conflit a bien disparu, mais subsiste l'autre erreur :
1>SDLmain.lib(SDL_win32_main.obj) : error LNK2019: symbole externe non résolu _SDL_main référencé dans la fonction _main
Et là, je ne comprends pas le message. Manifestement, _main est interne à SDL, puisque non défini par moi. Il s'y trouve un appel à _SDL_main, encore un truc à eux, et celui-ci ne peut-être résolu ? Je ne sais pas comment lui faire trouver à ce moment-là confus


Quant à la recompilation dont tu parles, j'y ai pensé, mais ça voudrait dire quoi ? Au final, j'aurai la même DLL, les même headers, ça voudrait dire que le format des bibliothèques statiques (LIB) change d'une version de MSVC à une autre ??


Merci en tout cas pour ton aide, même si depuis ce matin, j'ai l'impression d'avancer... en rond triso