Как добавить файл Ws2_32.lib в мезон?

Я использую систему сборки мезон. Как я могу связать файл winsock в моем meson.build? Я пробовал использовать dependency('Ws2_32'), но это просто возвращает ошибку, что не может найти библиотеку. Я использую мезон + C ++.


person ICanKindOfCode    schedule 06.09.2020    source источник


Ответы (3)


Если вы знаете путь к вашему файлу lib, вы можете создать зависимость следующим образом:

my_inc = include_directories(...)
my_lib = static_library(...)
my_dep = declare_dependency(link_with : my_lib, include_directories : my_inc)

ссылка на мезонную документацию

person Alex    schedule 15.09.2020

Попробуйте использовать метод find_library ():

compiler = meson.get_compiler('cpp')
dep = compiler.find_library('ws2_32', required: true)
person pmod    schedule 19.09.2020

Используйте 1_. В документации говорится:

По умолчанию библиотека ищется в каталоге системной библиотеки (например, / usr / lib).

Вы можете определить значение каталога вашей системной библиотеки (libdir), набрав meson configure в каталоге сборки. Очевидно, libdir всегда относительно prefix:

Обратите внимание, что значение, возвращаемое для встроенных параметров, которые заканчиваются на dir, например [..] libdir, всегда является путем относительно (и внутри) префикса.

person ManuelAtWork    schedule 02.06.2021