首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >F#与包含的.so文件一起使用托管DLL。

F#与包含的.so文件一起使用托管DLL。
EN

Stack Overflow用户
提问于 2019-12-23 22:29:55
回答 1查看 59关注 0票数 0

我试图使用第三方管理的DLL包一个非托管的.so,我不知道如何避免在Mac上的System.DllNotFoundException

这个库有两个文件

  • managed_wraper.dll
  • unmanaged_library.so

如果我在linux上,将.so和DLL放在输出文件夹中可以工作,那么在Mac上就不能工作了。我也不能让任何平台和木星一起工作。

我在Mac 上尝试了什么

DYLD_FALLBACK_LIBRARY_PATH

  • Too

  • 设置LD_LIBRARY_PATH,DYLD_LIBRARY_PATH,DYLD_FRAMEWORK_PATH,LD_LIBRARY_PATH很多页面链接到这里,

  • .so放置在不同的地方-- ~/Librarycurrent directory.so

我甚至不知道从哪里开始使用木星,我可以让它用#r找到DLL,但是当DLL试图找到.so时,它就崩溃了。

软件版本

  • Mac 10.14.6
  • .NET 2.1.401 - Mac
  • jupyter核心4.6.1,jupyter-记事本: 6.0.2
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-24 01:05:35

哇,我不喜欢电脑:)下面是CLI应用程序的工作原理

Linux CLIDLL.so复制到输出文件夹中。

Mac 我不得不将.so重命名为.dylib,然后您可以:

library.dylib

  • Rename

  • 将包装器DLL和libray.so复制到输出文件夹,重命名为library.so,将library.so重命名为library.dylib并设置为library.dylib

在任何一种情况下,都必须将包装器DLL复制到输出文件夹。也许dotnet只加载.dylib,但我已经看到了在Mac上可以在哪里使用.so文件。请有人指点我

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59461912

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档