tsung
asked on
how to compile winsock program ?
I'm from a UNIX environment programmer and i faced a problem of compiling a socket program (it work on UNIX).
Currently i'm using borland C++4.5 and i'm trying to write a windows base socket program.
just some need info, is that enough just only include thw winsock.h header file ? or what else do i need ? any .lib file or .dll file ? if yes, how do i make a linking of it ?
error occur when i try to link the program, it said undefine symbol SOCKET in mysock.cpp
how should i solve that ?
Currently i'm using borland C++4.5 and i'm trying to write a windows base socket program.
just some need info, is that enough just only include thw winsock.h header file ? or what else do i need ? any .lib file or .dll file ? if yes, how do i make a linking of it ?
error occur when i try to link the program, it said undefine symbol SOCKET in mysock.cpp
how should i solve that ?
You need to link wsock32.lib or winsock.lib, depending on your compiler.
ASKER
How should i make the linkage for the winsock.lib to my program if i'm using the borland c++ 4.5 compiler ?
This is proboly a dumb question but you do have SOCKET defined somewhere?? I use borland 4.5 I will see if I can't figure out how to do the linking.
ASKER
I checked the winsock.h header file and there is a line of code ---> typedef unsigned int SOCKET
been defined in the header file.
is there any others possibility which cause this problem ?
been defined in the header file.
is there any others possibility which cause this problem ?
Search through your includes and code for any "strange" uses of "SOCKET". It is just supposed to be a variable (uint). But since you are getting linker errors, the compiler thinks that SOCKET is a function or some other block of code.
-=- James.
-=- James.
Linking winsock.lib or wsock32.lib didn't help? All socket symbols are defined there.
ASKER
I have try the same program and same libraries and it work on MSVC 5.0. But how come Borland C can't do it ?
You never know the mysterious ways of compilers/linkers - what they include by default, what they include when they see something's missing, et cetera
This sounds like a serious question. Why don't you increase the points to 50 (at least)?
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.