Je suis en train de m'entraîner aux fonctions réseaux en utilisant la librarie IrrNetLite (étant basée sur enet).
Le problème est le suivant : Lorsque je compile, il y a un problème vaec une fonction dans enet\win32.c, dont voici les erreurs :
obj\Debug\enet\win32.o:: In function `enet_socket_send':
D:\WoS Realm Server\enet\win32.c:193: undefined reference to `WSASendTo@36'
obj\Debug\enet\win32.o:: In function `enet_socket_receive':
D:\WoS Realm Server\enet\win32.c:223: undefined reference to `WSARecvFrom@36'
Il me semble bien que j'ai linké les libraries (WinSock2 en l'occurence, j'ai linké WSock32.lib et WS2_32.lib), j'ai bien mis #include <WinSock2.h> avant l'inclusion de la librarie enet...
Mais là je bloque, une idée ?
|Résolu| J'ai finalement trouvé la solution moi même. J'utilise Code::Blocks, et en supprimant tous les fichiers du projet et en les remettant, ca a fini par fonctionner. Voilà cette astuce pourrait servir à d'autres...
Et bien non, j'ai toujours un problème. J'ai réussi a linker la librarie, mais un problème subsiste, voici mon code :
/****************************************
* Realmserver
*****************************************/
#include <stdlib.h>
#include <stdio.h>
#include <string>
#include <IRR/irrlicht.h>
#include <WinSock2.h>
#include <enet/enet.h>
#include <irrNet/irrNet.h>
#define _REALMSERVER_PORT 14400
usingnamespace std;
usingnamespace irr;
usingnamespace net;
class myPacketHandler :
public irr::net::PacketHandler
{
public:
myPacketHandler(){};
virtual ~myPacketHandler(void){};
virtualvoid Handle(irr::net::InPacket * packet);
private:
c8 packetid; // This is a single 8-bit char for storing the packet id.
Je sais, c'est bordéllique. Mais c'est un entraînement seulement.
Voici les erreurs :
obj\Debug\main.o:: In function `main':
D:\WoS Realm Server\main.cpp:67: undefined reference to `irr::net::createNetManager(irr::net::PacketHandler*)'
D:\WoS Realm Server\main.cpp:72: undefined reference to `irr::net::INetManager::setUpServer(int)'
obj\Debug\main.o:: In function `ZN15myPacketHandlerD1Ev':
D:\WoS Realm Server\main.cpp:(.text$_ZN15myPacketHandlerC1Ev[__ZN15myPacketHandlerC1Ev]+0xd):: undefined reference to `irr::net::PacketHandler::PacketHandler()'
:: === Build finished: 3 errors, 0 warnings ===
Je ne comprend pas là... Les .h sont inclus, le namespace est reconnu, mais niet...
Dans mon projet code::blocks, j'ai uniquement le main.cpp
Problème avec IrrNetLite
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.