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

Auteur Sujet: [DEBUTANT] fatal error LNK1112  (Lu 8252 fois)

0 Membres et 2 Invités sur ce sujet

morius

  • Newbie
  • *
  • Messages: 7
    • Voir le profil
[DEBUTANT] fatal error LNK1112
« le: Mai 03, 2013, 08:25:36 pm »
Bonjour,

tout d'abord, je tiens à m'excuser de vous déranger, et à vous remercier d'avoir sorti SFML 2.0! :)

j'ai tout récemment changé d'ordinateur et j'ai voulu me remettre à cette nouvelle version de SFML... malheureusement je n'arrive pas à compiler le code du tutoriel... et je tiens à dire que je ne comprends pas grand chose aux histoires de link, etc  :-[

Je viens de télécharger Visual Studio Express 10 pour 64 bits (comme mon ordinateur).
J'ai téléchargé la version correspondante de la SFML.

J'ai configuré je pense comme il faut le projet comme expliqué dans le tutoriel... toutefois, j'obtiens une erreur, qui est la suivante:

1>------ Début de la régénération globale : Projet : SFML_TEST_2, Configuration : Debug Win32 ------
1>  main.cpp
1>sfml-graphics-d.lib(sfml-graphics-d-2.dll) : fatal error LNK1112: type d'ordinateur module 'x64' en conflit avec le type d'ordinateur cible 'X86'

En cherchant un peu, j'ai trouvé dans Propriété de configuration > éditeur de lien > avancé un champ "ordinateur cible"... pour voir j'ai changé de x86 en x64 et j'obtiens l'erreur "inverse":

1>------ Début de la régénération globale : Projet : SFML_TEST_2, Configuration : Debug Win32 ------
1>  main.cpp
1>Debug\main.obj : fatal error LNK1112: type d'ordinateur module 'X86' en conflit avec le type d'ordinateur cible 'x64'

La différence aussi serait la "source" de l'erreur, sans que je ne sache trop pourquoi..

En faisant quelques recherches sur le forum, j'ai trouvé un cas qui semble très similaire au mien... toutefois la façon dont il a résolu le problème ne me concerne pas je pense  :-\
http://en.sfml-dev.org/forums/index.php?topic=8169.0

Donc je viens ici demander votre aide... Si vous voulez plus d'informations, n'hésitez pas, mais je ne sais pas quoi vous dire de plus  :P
Je pense vraiment n'avoir rien modifié de spécial, je viens tout juste de télécharger tout ça...

Merci d'avance pour votre aide, et bonne journée!

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : [DEBUTANT] fatal error LNK1112
« Réponse #1 le: Mai 03, 2013, 08:38:23 pm »
Je ne pense pas qu'il te manque quoique ce soit, maintenant il faut juste que tu recommences tout depuis zéro pour effacer les manips douteuses que tu as faites avant ;)

- télécharge SFML pour Visual Studio 2010 32-bits
- configure ton projet pour cible x86
- compile

Si tu préfères tu peux le faire avec 64-bits / x64, évidemment.
Laurent Gomila - SFML developer

morius

  • Newbie
  • *
  • Messages: 7
    • Voir le profil
Re : [Résolu] fatal error LNK1112
« Réponse #2 le: Mai 03, 2013, 08:54:44 pm »
Merci de ta réactivité!

Alors... je n'y connais rien, mais simple curiosité, pourquoi télécharger pour 32 bits alors que mon ordinateur et ma version de Visual Studio sont 64 bits? ça ne me parait pas super logique comme ça  :P

x64 = 64 bits et x86 = 32 bits?

En tout cas, ça marche bien très bien même :D Il a juste fallu que je change de SFML 64 à 32 bits!

Merci beaucoup!

Laurent

  • Administrator
  • Hero Member
  • *****
  • Messages: 32498
    • Voir le profil
    • SFML's website
    • E-mail
Re : [DEBUTANT] fatal error LNK1112
« Réponse #3 le: Mai 03, 2013, 09:09:07 pm »
Ca veut juste dire que ton OS et ton compilateur supportent les architectures 64 bits, pas qu'ils ne font que ça :

- un OS 64 bits peut très bien faire tourner un binaire 32 bits (sinon tu n'aurais pas beaucoup de programmes à disposition...)
- un compilateur 64 bits propose aussi de compiler en 32 bits (sinon il faudrait que tu installes deux versions du compilateur, pas très pratique)

Donc en gros, les "trucs" 64 bits sont un sur-ensemble des "trucs" 32 bits. Pas un truc à part. Quand tu vois un OS ou un compilo "64 bits", en réalité c'est donc plutôt "32 + 64 bits".

Quand aux appelations, en gros :
- x86 = 32 bits
- x64 ou x86_64 = 64 bits

Il y a plusieurs variations (IA64, AMD64, ...), si tu es un peu curieux je te conseille d'aller voir les pages correspondantes sur Wikipedia.
« Modifié: Mai 03, 2013, 09:10:51 pm par Laurent »
Laurent Gomila - SFML developer

morius

  • Newbie
  • *
  • Messages: 7
    • Voir le profil
Re : [DEBUTANT] fatal error LNK1112
« Réponse #4 le: Mai 03, 2013, 10:58:32 pm »
Ah d'accord!

Merci beaucoup, je ne savais pas  :)