问:是否有可能使用.dll文件在Linux上编译程序

<强>其中这会: 这个.dll将用于从第三方写PHP扩展到一些专用软件。

<强>背景和研究

我被赋予了称为proprietary.lib库。我很好奇,因为我以前从未见过的.lib延伸,所以我输入:

file proprietary.lib

的输出是:

proprietary.lib:  current ar archive

我做了一些研究,发现ar是更多或更少tar(事实上,我想tar有,因为在大多数* nix的环境中代替ar)。

一旦检查ar手册页,只见t option,它显示一个表中的那个归档文件的内容列表。凉。所以I型:

ar t proprietary.lib

和GET:

proprietary.dll
proprietary.dll
... (snip X lines) ...
有帮助吗?

解决方案

您可以尝试提取ar文件(Debian软件包是ar文件,FWIW),然后运行file上的内容。

你不会是能够使用的Windows DLL没有翻译。唯一的DLL文件,我知道这项工作本身在Linux上的编译和Mono。

如果有人给你一个专有的二进制库的代码对,你应该确认它的编译为目标架构(没有像试图利用上午ARM二进制在x86系统上),并且它的编译的Linux版本。

话虽这么说......好运气。我讨厌编程针对其中我有文档的第三方库源。

其他提示

最近的发展可能已经改变了这种状况:有是Linux可用调用LoadLibrary 功能,这使得它可能加载一个Windows DLL和然后内调用函数。

所以,如果你真的有.dll文件是Windows DLL,你可以找到一种方法,使用它你的软件。

.dll文件通常视窗共享库。 (这也有可能是在Linux上有人建立了一个普通的Linux库,并把它称为.dll文件的某些原因。)

这是可能的,你可以使用葡萄酒对他们的链接。这种支持曾经是那里的实验 - 我不知道它的当前状态。

是的,我们可以使用DLL与酒的帮助。 只要安装wine64在linux

sudo apt-get install wine64
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top