tags:

views:

614

answers:

4

I want to use an older code-fragment in my Qt-project, which is using WinSocks.
I created my program with Qt Creator and I don't know, how I can link to the ws2_32-Library. I already added LIBS += -lws2_32 to my .pro, but nothing happened. So how can I link to this library?

edit: Where can I find the ws2_32.lib to include it? Do I have to download it first? I know it comes with "Visual Studio", but I don't use it and I don't want to use it.

A: 

You are supposed to use the full or relative path (depends on what library paths you have in your enviroment) to the .libs.

From the qmake manual:

win32:LIBS += c:/mylibs/math.lib
Georg Fritzsche
ok, I think this could work. But look at my edit, where can I find this ws2_32.lib?
Berschi
QtCreator is based on mingw, so `win32:LIBS += ws2_32.lib` should work i think. Can't check at the moment though as i'm on a mac here.
Georg Fritzsche
Maybe just `+= ws2_32`.
Georg Fritzsche
A: 

You need too to add the path to the headers in order to add the function's signatures of a dynamic library.

Use the INCLUDEPATH variable into the .pro file.

Patrice Bernassola
A: 

I have ws2_32.lib in c:\Program Files\Microsoft SDK\Lib\WS2_32.Lib it comes with the platform sdk. I have a very old version from Feb 2003 I think, I only needed it when I was using VC6.0, but I assume it is in the latest version too.

iain
+1  A: 

ok, when you know it, it's really simple.
The Qt-SDK comes with a WinSock2-Library, called libws2_32.a.
The only thing you have to do, is to enter this line in your .pro:
LIBS += C:\Qt\2009.04\mingw\lib\libws2_32.a
this includes the winsock2-library to your project and you have nothing else to do.

Berschi