[fpc-pascal]plugin frameworks.

Marco van de Voort marcov at stack.nl
Thu Jul 18 16:45:26 CEST 2002

> > Plugins can be implemented in a variety of ways, ranging
> > from DLL's/.so's (look to LoadLibrary and GetProcAddress API functions 
> > in Windows, I don't know the Linux versions for .so's)
> I have no intention of buying much less programming a current version of
> windows... I poked around in Borland C++ 4.51 looking for said functions
> but I couldn't find them in the helpfile... There was nothing resembling
> those in the Free Pascal docs either. 

For what OSes do you need these functions?

For win32 and *nix you can use unit dynlibs.

For Win32 this means DLLs. 

For Unix this means shared libraries. There are currently some limitations
with FPC shared libraries (no PIC), which means that the implementation
will have some problems ( everything must be compiled at once)

Afaik there hasn't been much testing with larger numbers of FPC generated
(so non PIC) shared libraries under *nix yet.

> > to named pipes (doable in windows and linux) to COM/COM+/DCOM 
> > implementations (Windows only?).

COM becomes CORBA under *nix, but is less common. (but e.g. Gnome uses it)
Pure Dos is harder. The default extender Go32V2 can easily (and quite well)
create DXE's, but that nearly excludes runtime library usage in the plugins.

An alternative would be the dos extender WDOSX, which supports DLLs. There
was some research into the feasability of this, and IIRC it worked, but
I don't know details.

More information about the fpc-pascal mailing list