[enet, C++] error C2011: 'fd_set' : 'struct' type redefinition
Ostatnio zmodyfikowano 2013-11-19 04:04
braders Temat założony przez niniejszego użytkownika |
[enet, C++] error C2011: 'fd_set' : 'struct' type redefinition » 2013-11-05 23:46:54 Witam postanowiłem się pobawić internetem za pomocą biblioteki enet,
ale podczas kompilacji samej pustej funkcji main wyskakują mi 44 błędy niezwiązane z biblioteką "przynajmniej bezpośrednio".
Błędy związane są z plikiem winsock2.h .
Środowisko to visual c++ 2010.
Tutaj kilka plików:
Error 1 error C2011: 'fd_set' : 'struct' type redefinition c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 61
Error 7 error C2011: 'servent' : 'struct' type redefinition c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 161
Error 40 error C2091: function returns function c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 545
Error 69 error C2371: 'BLOB' : redefinition; different basic types c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 833
Error 50 error C2371: 'DECLARE_STDCALL_P' : redefinition; different basic types c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 555
Error 70 error C2371: 'LPBLOB' : redefinition; different basic types c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 833
Error 49 error C2556: 'int (__cdecl *DECLARE_STDCALL_P(hostent *))(const char *)' : overloaded function differs only by return type from 'int (__cdecl *DECLARE_STDCALL_P(hostent *))(const char *,int,int)' c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 555
Error 45 error C2733: second C linkage of overloaded function 'DECLARE_STDCALL_P' not allowed c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 554
Error 42 error C3646: 'gethostbyaddr' : unknown override specifier c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 554
Error 41 error C4430: missing type specifier - int assumed. Note: C++ does not support default-int c:\program files\microsoft visual studio 10.0\vc\include\winsock2.h 545
Bibliotekę dodałem w następujący sposób.
Additional Library Directories- C:\enet-1.3.10
Additional Include Directories- C:\enet-1.3.10\include
Additional Dependencies- enet.lib
Nie wiem czym to może być spowodowane za wszelką pomoc/podpowiedz dziękuje.
Jak ktoś ma na komputerze zainstalowanego visuala to mógł by mi podesłać ten plik. |
|
den93 |
» 2013-11-06 00:09:54 Może masz gdzieś w swoim projekcie #include <windows.h> ? Albo #include <winsock2.h> ? Usuń tą linijke. |
|
braders Temat założony przez niniejszego użytkownika |
» 2013-11-06 08:41:21 Nie mam tej linijki są dodane w pliku enet.h. |
|
den93 |
» 2013-11-06 09:11:30 Aha. Sprawdziłem i u mnie wszystko śmiga jak należy, nie mam pomysłu. Sprawdzałeś czy Ci nie brakuje jakiegoś nagłówka? lub może dodajesz do projektu nie ten nagłówek co trzeba? |
|
braders Temat założony przez niniejszego użytkownika |
» 2013-11-06 13:12:35 A masz ma na komputerze zainstalowanego visuala? Jeśli tak to mógł byś mi podesłać plik "winsock2.h"? |
|
Monika90 |
» 2013-11-06 13:31:46 Przecież masz ten plik, inaczej kompilator by ci nie wyświetlał błędów w nim. Takie błędy powstają, gdy masz #include <windows.h> albo <winsock.h> przed #include <winsock2.h>. Zmień kolejność includów. |
|
braders Temat założony przez niniejszego użytkownika |
» 2013-11-06 16:47:38 Jak mam zmienić kolejność? Jak mam tylko #include <enet/enet.h>
int main() { return 0; }
|
|
Monika90 |
» 2013-11-06 18:47:34 A jak zastąpisz to tym: #include <winsock2.h> #include <enet/enet.h>
int main() { return 0; }
to co się dzieje? |
|
« 1 » 2 3 |