在跨平台的.NET Core可执行文件中,如何指定本机依赖项的路径/将它们放在哪里?

时间:2019-01-15 15:32:42

标签: .net-core pinvoke

我一直使用p / invoke在.NET Core上的跨平台Web应用程序中调用一些本机依赖项。这仅适用于我专门安装并ldconfig这些依赖项。

理想情况下,我希望能够在适当的平台上运行dotnet publish --self-contained,并让该命令包括所需的所有so文件,无论它们在哪里,而无需使用ldconfig 。我不知道这是否可能。

所以我的问题是:

  1. 如果不使用ldconfig ,. NET Core在哪里寻找本机依赖关系?它是否是网络应用程序有关系吗?
  2. 如果对(1)的回答不是“无处不在”,那么在执行dotnet publish时如何包括这些依赖项?

1 个答案:

答案 0 :(得分:3)

自包含选项旨在创建可移植的发布选项。输出文件夹将包含所有必需的本机文件以及在指定平台上运行而无需安装所需的任何设置。所有dll依赖项都必须位于bin文件夹中。