Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Possible to use a .dll on Linux [duplicate]

Tags:

Question: Is it possible to compile a program on linux using a .dll file?

Where this is going: This .dll will be used to write a php extension to some proprietary software from a third party.

Background and Research:

I have been given a library called proprietary.lib. I was curious, as I have never seen the .lib extension before, so I typed:

file proprietary.lib 

The output was:

proprietary.lib:  current ar archive 

I did some research and found that ar is more-or-less tar (and in fact, I guess tar has since replaced ar in most *nix environments).

Upon inspecting the ar manpage, I saw the t option, which displays a table listing of the contents of that archive. Cool. So I type:

ar t proprietary.lib 

And get:

proprietary.dll proprietary.dll ... (snip X lines) ... 
like image 497
random_hero Avatar asked Mar 29 '10 14:03

random_hero


2 Answers

Recent development may have changed the situation: There is a loadlibrary function for Linux available, that makes it possible to load a Windows DLL and then call functions within.

So, if the .dll file you have actually is a Windows DLL, you may find a way to use it in you software.

like image 58
Ber Avatar answered Sep 20 '22 01:09

Ber


.dll files are usually Windows shared libraries. (It's also possible that somebody on Linux has built a regular Linux library and called it .dll for some reason.)

It's possible you could link against them using Wine. Support for this was once in there as experimental - I don't know its current status.

like image 36
Martin Beckett Avatar answered Sep 22 '22 01:09

Martin Beckett