Привет, я только что прошел проблему выше ....
Итак, сначала несколько замечаний ...
Я знаю, что вы переходите на MinGw, но вам может понадобиться Cygwin, чтобы обойти это, я не очень хорошо знаю Mingw, я знаю Cygwin лучше. Но я знаю, что они двоюродные братья друг друга.
Cygwin поставляется с предварительно скомпилированными библиотеками наддува, но кто знает, какая у них версия. Я уверен, что это можно проверить, но у кого есть время, чтобы сделать это правильно? Я не делаю ссылки на библиотеки повышения cygwin или библиотеки повышения mingw, я создал повышение с нуля, используя gcc для windows (cygwin). Компиляция прошла нормально.
На момент написания этой статьи буст на версии 1.47.0, я верю.
Уже тот факт, что cygwin использует версию (x?) И boost 1.47.0, может быть серьезной проблемой. Сообщите, что вы используете для повышения.
Я использовал код, разработанный на boost 1.42, и имел связанные с ним ошибки компоновщика. Код скомпилирован, заголовки найдены и т. Д. И т. Д. ... но затем я получил неопределенную ссылку на WSA и т. Д. И т. Д. ... opensocket this, закрытие сокета и т. Д. ...
Таким образом, для повышения, для создания сетевых сокетов, требуется библиотека платформы, в которой был найден ws2_32 в форме для Windows, и сокет для Linux.
Так что, если вы правильно используете boost и включаете правильные системные библиотеки boost, вам также может потребоваться библиотека для конкретной ОС для доступа к некоторым ресурсам (в данном случае к сети).
Ошибки компоновщика исчезают после этого. Вероятно, очевидно, что ветеранов знают, что здесь происходит, но я не смог найти четкого ответа через Google.