Qt (Создатель) с WinSocks (ws2_32) - PullRequest
5 голосов
/ 16 ноября 2009

Я хочу использовать более старый фрагмент кода в моем Qt-проекте, который использует WinSocks.
Я создал свою программу с помощью Qt Creator, и я не знаю, как мне связаться с библиотекой ws2_32. Я уже добавил LIBS += -lws2_32 к своему .pro, но ничего не произошло. Так как же я могу ссылаться на эту библиотеку?

edit: Где я могу найти ws2_32.lib, чтобы включить его? Я должен загрузить это сначала? Я знаю, что это идет с "Visual Studio", но я не использую это, и я не хочу использовать это.

Ответы [ 4 ]

15 голосов
/ 23 ноября 2009

хорошо, когда вы это знаете, это действительно просто. Qt-SDK поставляется с WinSock2-Library, которая называется libws2_32.a. сделать, это ввести эту строку в вашем .pro:

LIBS += C:\Qt\2009.04\mingw\lib\libws2_32.a

это включает в себя winsock2-библиотеку для вашего проекта, и вам больше нечего делать.

Вы можете сделать это немного проще, используя эту строку в вашем .pro:

LIBS += -lws2_32
0 голосов
/ 16 ноября 2009

Вам также необходимо добавить путь к заголовкам, чтобы добавить сигнатуры функции динамической библиотеки.

Используйте переменную INCLUDEPATH в файле .pro.

0 голосов
/ 17 ноября 2009

У меня ws2_32.lib в c:\Program Files\Microsoft SDK\Lib\WS2_32.Lib он поставляется с платформой sdk . У меня очень старая версия с февраля 2003 года, я думаю, она мне понадобилась только тогда, когда я использовал VC6.0, но я предполагаю, что она тоже в последней версии.

0 голосов
/ 16 ноября 2009

Вы должны использовать полный или относительный путь (зависит от того, какие пути к библиотекам у вас есть в вашей среде) до .lib s.

Из руководства qmake:

win32:LIBS += c:/mylibs/math.lib
...