CMake - 将预构建库链接到 C# 项目

2024-05-22

我正在使用 CMake 构建 C# 库。该库依赖于已构建的库 (.dll)。

我似乎无法让图书馆链接到我的图书馆。

我尝试过使用target_link_libraries(mylib ${external_lib})。 我也尝试过暴力破解/reference:${external_lib}作为编译选项(但 CMake 在构建时将其删除)。

我如何使用 CMake 来完成此任务?

通常在 VS C# 项目文件中您将添加:

<Reference Include="somelibrary">
    <HintPath>path/to/some/library</HintPath>
</Reference>

根据this https://cmake.org/cmake/help/v3.8/release/3.8.html#id4,你应该能够设置VS_DOTNET_REFERENCE_<refname>属性于mylib目标,像这样:

set_target_properties(mylib PROPERTIES 
    VS_DOTNET_REFERENCE_somelibrary "/path/to/libs/somelibrary.dll")

确保不仅提供库的路径,还提供完整的库名称somelibrary.dll.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CMake - 将预构建库链接到 C# 项目 的相关文章