Problême avec librairies internet
Tilex
-
yann -
yann -
Salut tout le monde, je voudrais savoir pourquoi dès que je commence à essayer de programmer n'importe quoi touchant les sockets ou autres (en c++), le compilateur me dit quelque chose comme Undefined Reference @le_nom_de_la_librairie il n'y a aucune des librairies touchant aux connexions internet et ce, sur 2 compilateurs différent! J'ai bien véfié mon code, et même FAIT vérifié mon code et il était bon (je l'ai pris d'un site) les librairies winsock.h et la deuxième (je ne me souviens plus clairement, mais elle ressemble a winsock2.h) pourriez me dire quoi faire, je suis découragé, j'aimerais bien toucher un peu à ce style de programmation aussi...
(Dev C++ V4 et GNU)
Merci d'avance
(Dev C++ V4 et GNU)
Merci d'avance
A voir également:
- Problême avec librairies internet
- Gps sans internet - Guide
- Mon pc rame sur internet - Guide
- Complete internet repair - Télécharger - Web & Internet
- Internet explorer - Guide
- Problème internet aujourd'hui - Accueil - Outils
6 réponses
salut,
pkoi tu dis ne pas toucher au librairies internet ??????????
Paske le @library_name, ca n'a aucun rapport avec internet !
C juste que t'as pas configurer le compilateur pour lui dire à kelle librairie tu te link. (ca s'appelle un link d'ailleurs....)
On peut voir un bout de ton code (ou entier, si pas trop long...)
yann
pkoi tu dis ne pas toucher au librairies internet ??????????
Paske le @library_name, ca n'a aucun rapport avec internet !
C juste que t'as pas configurer le compilateur pour lui dire à kelle librairie tu te link. (ca s'appelle un link d'ailleurs....)
On peut voir un bout de ton code (ou entier, si pas trop long...)
yann
Tiens, je comprend pas trop, j'ai trouvé ca sur internet dans un tutoriel
#include <winsock.h>
#pragma comment(lib, "wsock32.lib")
void main()
{
WSADATA WSAData;
WSAStartup(MAKEWORD(1,0), &WSAData);
}
// erreur générée par le compilo
//e:\alex\banques\untitled1.o(.text+0x1b):untitled1.cpp:
//undefined reference to `WSAStartup@8'
#include <winsock.h>
#pragma comment(lib, "wsock32.lib")
void main()
{
WSADATA WSAData;
WSAStartup(MAKEWORD(1,0), &WSAData);
}
// erreur générée par le compilo
//e:\alex\banques\untitled1.o(.text+0x1b):untitled1.cpp:
//undefined reference to `WSAStartup@8'
Tiens, je comprend pas trop, j'ai trouvé ca sur internet dans un tutoriel
#include <winsock.h>
#pragma comment(lib, "wsock32.lib")
void main()
{
WSADATA WSAData;
WSAStartup(MAKEWORD(1,0), &WSAData);
}
// erreur générée par le compilo
//e:\alex\banques\untitled1.o(.text+0x1b):untitled1.cpp:
//undefined reference to `WSAStartup@8'
#include <winsock.h>
#pragma comment(lib, "wsock32.lib")
void main()
{
WSADATA WSAData;
WSAStartup(MAKEWORD(1,0), &WSAData);
}
// erreur générée par le compilo
//e:\alex\banques\untitled1.o(.text+0x1b):untitled1.cpp:
//undefined reference to `WSAStartup@8'
Bon, ok....
En fait, tu apelles une fonction de la dll: WSAStartup(...)
Ton message d'erreur te dit qu'il ne trouve pas de référence à cette fonction dans la dll, il y a deux réponses possibles:
1) essaye de mettre le fichier wsock32.lib dans ton repertoire de projet (surement: e:\alex\banques\)
2) tu disposes d'une versioàn de la dll dans laquelle la fonction à changé de nom (peu probable, mais bon... ca arrive avec le versionning de dll !!!)
Voilà !
@+ yann
En fait, tu apelles une fonction de la dll: WSAStartup(...)
Ton message d'erreur te dit qu'il ne trouve pas de référence à cette fonction dans la dll, il y a deux réponses possibles:
1) essaye de mettre le fichier wsock32.lib dans ton repertoire de projet (surement: e:\alex\banques\)
2) tu disposes d'une versioàn de la dll dans laquelle la fonction à changé de nom (peu probable, mais bon... ca arrive avec le versionning de dll !!!)
Voilà !
@+ yann
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai inclus tous les fichiers qui avait un rapport avec winsock (bref tous ceux que je voyait (avec le nom) qui pouvait avoir rapport avec winsock) dans mon répertoire et ca ne marche pas plus, j'ai déjà posé la question sur un autre forum, il m'ont proposé l'hypothèse que ma librairie (winsock2.h) était p-e mal balancée (#endif) , alors je leur ai copié/coller le code de ma librairie et ils m'ont dit qu'elle était bien balancée... je ne comprend vraiment pas...
Se peut-il que ce soit un problême venant de mon ordi? parce que je sais qu'au point de vue sécurité mon ordi est assez fort... et j'ai souvent des problêmes parce que personne (excepté les hackers) n'est capable de venir simplement se connecter a mon ordi (ie: transfert de fichiers par msn, dialogue par micro...etc)
Merci encore
Se peut-il que ce soit un problême venant de mon ordi? parce que je sais qu'au point de vue sécurité mon ordi est assez fort... et j'ai souvent des problêmes parce que personne (excepté les hackers) n'est capable de venir simplement se connecter a mon ordi (ie: transfert de fichiers par msn, dialogue par micro...etc)
Merci encore
Tu as bien copié le wsock32.lib dans e:\alex\banques\ ??????
c'est le fichier lib qui est important, il contient le mapping des fonctions que tu appelle dans ton .cpp.
Le fichier winsock.h contient la declaration des fonctions.
et le fichier .dll la definition de t fonctions.
Sinon, ton .cpp me parait correct, mais je ne developpe pas avec dev c++... Donc je ne peux pas affirmer que ta liaison à la librairie (wsock2.lib) est OK.
@+
c'est le fichier lib qui est important, il contient le mapping des fonctions que tu appelle dans ton .cpp.
Le fichier winsock.h contient la declaration des fonctions.
et le fichier .dll la definition de t fonctions.
Sinon, ton .cpp me parait correct, mais je ne developpe pas avec dev c++... Donc je ne peux pas affirmer que ta liaison à la librairie (wsock2.lib) est OK.
@+