Статическая ошибка компиляции с libevent в Mingw + MSYS

Я написал скрипт на Python, расширенный в winxp с mingw+msys скомпилирован. Будет звонить libevent Lib. Я надеюсь, что пользователь не установит больше библиотеки, поэтому я хочу скомпилировать ее статически, но есть ошибки. Вот мой процесс для компиляции и установки libevent:

​./configure -prefix=D:/libevent -enable-static
make
make install

Я написал два make-файла и получаю ту же ошибку.

libevent.a(buffer.o):In function 'evbuffer_read':undefined reference to 'WSARecv@28'
libevent.a(buffer.o):In function 'evbuffer_write_iovec':undefined reference to 'WSASend@28'
........................

Вот make-файлы:

Makefile 1

HEAD_PATH_FLAGS=-IC:/Python27/include -ID:/boost/include/boost-1_52 -ID:/libevent/include
LIB_PATH_FLAGS=-LD:/boost/lib -LD:/libevent/lib -LC:/Python27/libs
LIB_FLAGS=-lboost_python-mgw46-s-1_52 -Wl,Bstatic -levent -Wl,Bdynamic -lpython27 -lwsock32
SOURCE=test.o
all:${SOURCE}
g++ ${HEAD_PATH_FLAGS} ${SOURCE} ${LIB_PATH_FLAG} ${LIB_FLAGS} -fPIC -shared -o test.dll

Makefile 2

HEAD_PATH_FLAGS=-IC:/Python27/include -ID:/boost/include/boost-1_52 -ID:/libevent/include
LIB_PATH_FLAGS=-LD:/boost/lib -LD:/libevent/lib -LC:/Python27/libs
LIB_FLAGS=-lboost_python-mgw46-s-1_52 -lpython27 -lwsock32
SOURCE=test.o D:/libevent/lib/libevent.a
all:${SOURCE}
g++ ${HEAD_PATH_FLAGS} ${SOURCE} ${LIB_PATH_FLAG} ${LIB_FLAGS} -fPIC -shared -o test.dll

Почему это происходит? Как мне получить это, чтобы скомпилировать без ошибок?

0

Решение

Вы должны связаться с libws2_32.a, как WSASend а также WSARecv определены там. добавлять -lws2_32 на ваши команды компоновщика.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]