Domanda: È possibile compilare un programma su linux usando un file .dll?Possibile usare un dll su Linux
dove questo sta andando: Questa dll sarà utilizzato per scrivere un estensione PHP a qualche software proprietario da parte di terzi.
sfondo e della Ricerca:
mi è stata data una libreria chiamata proprietary.lib
. Ero curioso, come non ho mai visto l'estensione .lib
prima, così ho digitato:
file proprietary.lib
L'uscita era:
proprietary.lib: current ar archive
ho fatto qualche ricerca e ha scoperto che ar
è più o meno tar
(e infatti suppongo che lo abbia sostituito lo ar
nella maggior parte degli ambienti * nix).
Dopo aver esaminato la manpage ar
, ho visto il t option
, che visualizza un elenco di tabelle dei contenuti di tale archivio. Freddo. Così ho tipo:
ar t proprietary.lib
e ottenere:
proprietary.dll
proprietary.dll
... (snip X lines) ...
UNIX non utilizza DLL. In Linux il formato file corrispondente è "così" (oggetti condivisi) e in Mac OS X è "dylib" (librerie dinamiche) e "bundle". – kennytm
Vedete, è qui che entra in gioco la confusione. Dalla purga comp.lang.c, sembra che "DLL" sia un termine generico per una libreria, che per caso è il nome che Windows usa per essa. È semplice come ricompilare quella libreria nel formato ELF? –
Sì, è così semplice. Sei legato al venditore di questa libreria per ottenere una build adeguata. – Broam