Bienvenue, Invité. Merci de vous connecter ou de vous inscrire.
Avez-vous perdu votre e-mail d'activation ?

Auteur Sujet: Set up SFML sur visual studio 2012 : Problème, fichier externe non résolus.  (Lu 1889 fois)

0 Membres et 1 Invité sur ce sujet

litelawliet1

  • Newbie
  • *
  • Messages: 6
    • Voir le profil
Bonjour tout le monde :)

Depuis hier je tente d'installer la SFML( 2.1 - pour visual C++ 11, version 32 bits) sur visual studio 2012, malheureusement, la même erreur me reviens à chaque fois, m’empêchant d'effectuer le test du tutoriel :

1>MSVCRT.lib(crtexew.obj) : error LNK2001: symbole externe non résolu _WinMain@16
1>c:\users\********\documents\visual studio 2012\Projects\Win32Project1\Release\Win32Project1.exe : fatal error LNK1120: 1 externes non résolus

J'ai pourtant parfaitement effectuer les étapes du tutoriels, j'ai tenter en dynamique, et statique, aucun des 2 ne fonctionnent, ils me renvoient tous la même erreur.
J'ai bien sûr mis les dll du dossier bin dans mon dossier : Release et Debug.

J'ai disposer la SFML dans : Program Files(x86).

Release dynamique :

Éditeur de liens ->

Liens d'entrée :

sfml-graphics.lib
sfml-window.lib
sfml-system.lib


Répertoire de bibliothèques supplémentaire :

C:\Program Files %28x86%29\SFML-2.1\lib;%(AdditionalLibraryDirectories)

C/C++ ->

Général :

C:\Program Files %28x86%29\SFML-2.1\include;%(AdditionalIncludeDirectories)

Préprocesseur :

WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)

Voila pour mon problème, si quelqu'un peut m'éclairer sur ce qui cloche dans mon set up, cela me serais d'une grande aide !

Merci d'avance.
« Modifié: Avril 20, 2014, 04:18:52 pm par litelawliet1 »

G.

  • Hero Member
  • *****
  • Messages: 1593
    • Voir le profil
Si vous avez choisi de créer un projet "Windows application", alors le point d'entrée de votre code devrait être la fonction "WinMain" au lieu de "main". Etant donné que c'est spécifique à Windows, et que votre code ne compilerait donc pas sous Linux ou Mac OS X, SFML fournit un moyen de garder un point d'entrée "main" standard dans ce cas : liez votre projet au module sfml-main ("sfml-main-d.lib" en Debug, "sfml-main.lib" en Release), de la même manière que vous avez lié sfml-graphics, sfml-window et sfml-system.
?

litelawliet1

  • Newbie
  • *
  • Messages: 6
    • Voir le profil
Et bien merci, j'avais tenter tellement de choses (dont sfml-main.lib, mais le reste était mal régler à mon avis) que ça devenait un peu le fouillis dans ma tête et je n'arrivais pas à voir ce qui n'allait pas. Effectivement mon Release /Debug en dynamique marche dorénavant.

De même pour le statique, bien que j'ai des warning comme quoi les fichiers sfml-graphics-s-d.lib etc... ne soit pas trouver, et donc que l'objet sera lié sans information de débogage.
Mis à part les warning tout fonctionne parfaitement.

Merci beaucoup pour votre aide et désolé pour mon inattention.

G.

  • Hero Member
  • *****
  • Messages: 1593
    • Voir le profil
Tu peux aussi mettre ton projet en subsystem:console au lieu de subsystem:windows si tu veux une console en plus. Je ne sais plus où c'est dans les options, dans Linker je crois. (et du coup pas besoin de lier sfml-main)