Forum de la communauté SFML
Aide => Général => Discussion démarrée par: johndoe le Juin 07, 2017, 06:51:54 pm
-
Bonjour,
J'ai créer un programme, seulement j'aimerai que l'executable soit lançable sans que les dll soient dans le meme emplacement que l'executable : d'après ce que j'ai compris c'est le mode static.
J'ai donc suivi les étapes https://www.sfml-dev.org/tutorials/2.4/start-vc-fr.php à la lettre jusqu'à la définition de la macro static "SFML_STATIC". Donc jusqu'ici rien de bien difficile, seulement je comprends absolument pas la suite. J'avoue que avec les images c'était plus parlant. J'ai compris que certains modules nécéssitent d'autres modules en gros, mais j'ai pas compris ou établir les dépendances (dans l'entrée du Debug ou release ?) Si quelqu'un pouvait m'expliquait la chose d'un autre angle afin que je comprenne, ca serait plutot cool.
Je m'excuse d'avance, j'ai jamais été bon pour les config de compilation.
Cordialement
-
j'ai pas compris ou établir les dépendances (dans l'entrée du Debug ou release ?)
Dans les 2. Ce sont juste des bibliothèques à ajouter : au lieu d'avoir uniquement sfml-graphics.lib et les autres sfml-xxx.lib, tu auras aussi jpeg.lib etc. à ajouter à la liste. C'est tout, il n'y a rien de plus à comprendre.
-
Jai mis côté Debug :
sfml-network-s-d.lib
sfml-window-s-d.lib
sfml-system-s-d.lib
sfml-audio-s-d.lib
sfml-graphics-s-d.lib
opengl32-s-d.lib
freetype-s-d.lib
jpeg-s-d.lib
winmm-s-d.lib
gdi32-s-d.lib
openal32-s-d.lib
flac-s-d.lib
vorbisenc-s-d.lib
vorbisfile-s-d.lib
ws2_32-s-d.lib
vorbis-s-d.lib
ogg-s-d.lib
et côté release :
sfml-network-s.lib
sfml-window-s.lib
sfml-system-s.lib
sfml-audio-s.lib
sfml-graphics-s.lib
opengl32-s.lib
freetype-s.lib
jpeg-s.lib
winmm-s.lib
gdi32-s.lib
openal32-s.lib
flac-s.lib
vorbisenc-s.lib
vorbisfile-s.lib
ws2_32-s.lib
vorbis-s.lib
ogg-s.lib
Mais cela ne marche pas, le deboggeur indique : impossible d'ouvrir le fichier 'opengl32-s-d.lib'
J'ai donc enlever tous les "-s-d" aux autres module n'ayant pas le prefixe "sfml-" et ca ne marche également pas..
-
Il n'y a que SFML qui suive cette convention avec les suffixes "-s" et "-d", cela ne s'applique pas aux autres bibliothèques ;) De plus tu peux facilement voir que les fichiers correspondant n'existent pas.
et ca ne marche également pas..
Sans description plus précise on ne va pas aller bien loin...
-
Ok, jai donc enlever tous les suffixes ce qui donne ca
côté release :
sfml-network-s.lib
sfml-window-s.lib
sfml-system-s.lib
sfml-audio-s.lib
sfml-graphics-s.lib
opengl32.lib
freetype.lib
jpeg.lib
winmm.lib
gdi32.lib
openal32.lib
flac.lib
vorbisenc.lib
vorbisfile.lib
ws2_32.lib
vorbis.lib
ogg.lib
coté Debug :
sfml-network-s-d.lib
sfml-window-s-d.lib
sfml-system-s-d.lib
sfml-audio-s-d.lib
sfml-graphics-s-d.lib
opengl32.lib
freetype.lib
jpeg.lib
winmm.lib
gdi32.lib
openal32.lib
flac.lib
vorbisenc.lib
vorbisfile.lib
ws2_32.lib
vorbis.lib
ogg.lib
Après passé au deboggueur, cela me donne 67 erreurs de type : "blabla dejà défini dans blabla"
en gros j'ai surtout des erreurs référence LNK2005 et LNK2038. Je sais pas si ca va vous aidez..
j'ai pris en screen
-
C'est Visual Studio 2017 ? Est-ce que tu as changé des options autres que celles liées à SFML dans ton projet ?
-
Je suis sur visual studio 2015. Non je n'ai absolument rien fais de plus que ce qui a été demander de faire pour installer la library SFML. Peut etre y a t il un ordre d'importance ?