У меня есть проект, который использует Boost.Asio и образцы декодирования медиа, которые поставляются с Intel IPP-Library. Проблема заключается в следующем. Если я скомпилирую проект без определения WIN32_LEAN_AND_MEAN
, Asio жалуется на печально известную «winsock.h уже включенную» ошибку. Если я определяю макрос, заголовок в другой библиотеке имеет неопределенные типы, потому что он полагается на windows.h, включая winsock.h. Я попытался добавить winsock.h в этот заголовок вручную, но это заставляет Boost.Asio снова вскрикивать. Единственное решение, о котором я могу думать, - это пройти через каждый блок компиляции и убедиться, что Asio всегда включен первым. Из-за размера и сложности проекта (и уродства этого решения) я хотел бы найти лучший способ.Проблема с библиотеками с использованием winsock.h
Заранее благодарен!
Согласен - звучит как #includes необходимость рационализации. Не имеет смысла использовать winsock.h и boost.asio (который использует winsock2.h) в одном модуле компиляции. –