在跨平台 .NET Core 可执行文件中,如何指定本机依赖项的路径/将它们放在哪里?
In a cross-platform .NET Core executable, how can I specify paths to native dependencies / where do I put them?
我一直在使用 p/invoke 在 .NET Core 上的跨平台 Web 应用程序中调用一些本机依赖项。这只有效,因为我已经专门安装并 ldconfig
ed 那些依赖项。
理想情况下,我希望能够 运行 dotnet publish --self-contained
针对适当的平台,并让该命令包含它需要的所有 so
文件,无论它们需要在哪里,没有 ldconfig
。不知道可不可以。
所以我的问题是:
- 如果不使用
ldconfig
,.NET core 去哪里寻找原生依赖?它是网络应用程序重要吗?
- 如果 (1) 的答案不是 "nowhere," 我如何在
dotnet publish
时包含这些依赖项?
独立选项旨在创建一个可移植的发布选项。输出文件夹将包含所有必需的本机和在指定平台中 运行 所需的任何设置,无需安装。所有的 dll 依赖项都必须在 bin 文件夹中。
我一直在使用 p/invoke 在 .NET Core 上的跨平台 Web 应用程序中调用一些本机依赖项。这只有效,因为我已经专门安装并 ldconfig
ed 那些依赖项。
理想情况下,我希望能够 运行 dotnet publish --self-contained
针对适当的平台,并让该命令包含它需要的所有 so
文件,无论它们需要在哪里,没有 ldconfig
。不知道可不可以。
所以我的问题是:
- 如果不使用
ldconfig
,.NET core 去哪里寻找原生依赖?它是网络应用程序重要吗? - 如果 (1) 的答案不是 "nowhere," 我如何在
dotnet publish
时包含这些依赖项?
独立选项旨在创建一个可移植的发布选项。输出文件夹将包含所有必需的本机和在指定平台中 运行 所需的任何设置,无需安装。所有的 dll 依赖项都必须在 bin 文件夹中。