[VC++] Erreur de link: LNK2001: unresolved external symbol

Erreur de link: LNK2001: unresolved external symbol [VC++] - C - Programmation

Marsh Posté le 06-08-2003 à 20:13:44    

Bonjour à tous
Alors voila j'ai trouvé un petit progamme interessant mais que je n'arrive pas à linker dans visual c++6
Voiçi les erreurs que je récupère
auriez-vous une idée de quoi ça peut venir?
Si jamais, vous pouvez télécharger et avoir + d'info sur ce programe içi:
http://www.nullsoft.com/free/wwwinamp/
 

Code :
  1. --------------------Configuration: wwwinamp2 - Win32 Debug--------------------
  2. Linking...
  3. MAIN.OBJ : error LNK2001: unresolved external symbol _gethostbyaddr@12
  4. MAIN.OBJ : error LNK2001: unresolved external symbol _inet_addr@4
  5. MAIN.OBJ : error LNK2001: unresolved external symbol __endthread
  6. MAIN.OBJ : error LNK2001: unresolved external symbol __beginthread
  7. MAIN.OBJ : error LNK2001: unresolved external symbol _WSACleanup@0
  8. MAIN.OBJ : error LNK2001: unresolved external symbol _WSAStartup@8
  9. MAIN.OBJ : error LNK2001: unresolved external symbol _ioctlsocket@12
  10. MAIN.OBJ : error LNK2001: unresolved external symbol _WSAGetLastError@0
  11. MAIN.OBJ : error LNK2001: unresolved external symbol _recv@16
  12. MAIN.OBJ : error LNK2001: unresolved external symbol _closesocket@4
  13. MAIN.OBJ : error LNK2001: unresolved external symbol _shutdown@8
  14. MAIN.OBJ : error LNK2001: unresolved external symbol _listen@8
  15. MAIN.OBJ : error LNK2001: unresolved external symbol _bind@12
  16. MAIN.OBJ : error LNK2001: unresolved external symbol _htons@4
  17. MAIN.OBJ : error LNK2001: unresolved external symbol _socket@12
  18. MAIN.OBJ : error LNK2001: unresolved external symbol _accept@12
  19. MAIN.OBJ : error LNK2001: unresolved external symbol _send@16
  20. Debug/wwwinamp2.exe : fatal error LNK1120: 17 unresolved externals
  21. Error executing link.exe.
  22. wwwinamp2.exe - 18 error(s), 0 warning(s)


Merci de votre aide.


Message édité par beef02 le 06-08-2003 à 20:38:36
Reply

Marsh Posté le 06-08-2003 à 20:13:44   

Reply

Marsh Posté le 06-08-2003 à 20:28:32    

ben ... Comme te le dis ton cher ami Visual C++ : tu ne linke pas avec les libs !
 
il suffit que tu ajoutes les jolis petits fichiers .lib à ton projet pour que ca marche ... Mirââââcle ! :D


---------------
last.fm
Reply

Marsh Posté le 06-08-2003 à 20:30:56    

malheureusement je n'ai pas de fichiers lib!
ou alors je ne vois pas lesquels je dois ajouter

Reply

Marsh Posté le 06-08-2003 à 20:34:17    

la compilation ça ne résume pas à cliquer sur un bouton ? on m'aurait menti ? [:totoz]
 
ok, je --> []

Reply

Marsh Posté le 06-08-2003 à 20:35:03    

effectivement, j'ai lu vite fait ... ici, ce qui te manque, c'est la lib pour les sockets de windows => tu vas dans project->settings->link et tu ajoutes wsock32.lib dans le champ library modules. (pense bien à le fair epour toutes les configurations de ton projet, exemple : debug et release ...)
 
Edit : ortho :o


Message édité par theshockwave le 06-08-2003 à 20:35:31

---------------
last.fm
Reply

Marsh Posté le 06-08-2003 à 20:36:33    

désolé mais j'ai eu des cours de C pendant 1 an mais je n'ai pas été jusque là
et puis il y a longtemps donc je me sousviens plus de tout
et avant j'utilisais borland.

Reply

Marsh Posté le 06-08-2003 à 20:37:58    

ok merci
ça a résolu pas mal de probleme mais il me reste ceci :

Code :
  1. --------------------Configuration: wwwinamp2 - Win32 Debug--------------------
  2. Linking...
  3. MAIN.OBJ : error LNK2001: unresolved external symbol __endthread
  4. MAIN.OBJ : error LNK2001: unresolved external symbol __beginthread
  5. Debug/wwwinamp2.exe : fatal error LNK1120: 2 unresolved externals
  6. Error executing link.exe.
  7. wwwinamp2.exe - 3 error(s), 0 warning(s)

Reply

Marsh Posté le 06-08-2003 à 20:55:50    

Voici  ce que je viens de trouver à propos de cette erreur :

Code :
  1. Unresolved External Symbol __beginthread, __endthread
  2. When building a CodeBase application and linking to c4lib.lib, the linker may generate unresolved external symbol errors for the following symbols:
  3. __beginthread
  4. __endthread
  5. Solution
  6. These symbols represent functions that are used by CodeBase for internal multi-threading. If you receive these errors when you link your application, it means that you are not using a multi-threaded run-time library. In your project settings, make sure that your run-time library is multi-threaded.
  7. Last updated: 2003/02/18


Je viens d'aller voir dans le setting et je ne vois pas ou je peux faire ça.

Reply

Marsh Posté le 06-08-2003 à 20:59:16    

Compile en mode release ... Le mode debug est configuré par défaut pour ne pas supporter le multithread (utilisation de libs de debug style LIBCD au lieu de LIBCMT, ......)
 
Sinon, tu peux aller remplacer l'option de compilation /MLd par /MT dans les options du projet dans l'onglet C/C++ des settings du projet ...


---------------
last.fm
Reply

Marsh Posté le 07-08-2003 à 00:47:10    

beef02 a écrit :

Voici  ce que je viens de trouver à propos de cette erreur :

Code :
  1. Unresolved External Symbol __beginthread, __endthread
  2. When building a CodeBase application and linking to c4lib.lib, the linker may generate unresolved external symbol errors for the following symbols:
  3. __beginthread
  4. __endthread
  5. Solution
  6. These symbols represent functions that are used by CodeBase for internal multi-threading. If you receive these errors when you link your application, it means that you are not using a multi-threaded run-time library. In your project settings, make sure that your run-time library is multi-threaded.
  7. Last updated: 2003/02/18


Je viens d'aller voir dans le setting et je ne vois pas ou je peux faire ça.


 
Tu vas dans Project/Setting, onglet C/C+, dans category : "code generation" et dans "Use runtime library" et tu choisis "multithreaded DLL".

Reply

Marsh Posté le 07-08-2003 à 00:47:10   

Reply

Marsh Posté le 07-08-2003 à 09:52:05    

Citation :

la compilation ça ne résume pas à cliquer sur un bouton ? on m'aurait menti ?


 
Ben heu, c'est juste son code source qui est erroné !
#pragma comment(lib, "wsock32.lib" )
et là tu cliques [:milka]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
[:mike121] [:mouss_diouf]  


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 07-08-2003 à 11:14:44    

fykman a écrit :


 
Tu vas dans Project/Setting, onglet C/C+, dans category : "code generation" et dans "Use runtime library" et tu choisis "multithreaded DLL".  


 
:sweat: j'la retrouvais pas cette option ... Donc technique pas fine !  :whistle:


---------------
last.fm
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed