I am sorry to hear about your problem, and I'm sure there are others who
share your pain. If it is any consolation it is helpful to me to hear this,
since the software that I intend to port to D relies heavily on plug-ins.
It is disappointing that something as fundamental as plug-ins are such an
issue in D. There has been recent talks about adding support for dynamic
linking, but it doesn't seem to be a high enough priority yet. Hopefully it
will get some attention soon.
-Craig
"g" <[email protected]> wrote in message news:[email protected]...
it is a real pain trying to make a plugin from d.
I love D2 but I would even abandon it if there is solution with a compiler
that at least supports D1 and has a solution for dynamic linking.
Maybe I'm stupid, but tried dmd and ldc (and tango and phobos). And I
don't know if I want to go GDC.
It is so frustrating that DDL was abandoned, even I grabbed a external
branch an is not so outdated, but probably outdated and w/o documentation.
(btw linux)
is there a not so painful way of making plugins?. Or is there still
opportunity with DDL?
I'm open to both phobos, tango, D1 D2
We NEED a way to make plugins from d. And is a must to use freely the
features of D with out getting dirty (or not so dirty) or worse, limited
to some features
/*and for your pleasure some of the pain:
-------------------------------------------------------
g-desktop:~/dynamic/ddl/ddl/Samples$ xfbuild
+cldc -L-Wl,-Map -L-Wl,testHost01.map
testHost01.d -I../.. -I/home/g2/ldc/import +oftest01
.objs/host.o: In function
`_D3ddl11ExportClass44__T11ExportClassTC11testIface0110IHasFooBarZ11ExportClass14__T9newObjectZ9newObjectMFZC11testIface0110IHasFooBar':
host:(.gnu.linkonce.t._D3ddl11ExportClass44__T11ExportClassTC11testIface0110IHasFooBarZ11ExportClass14__T9newObjectZ9newObjectMFZC11testIface0110IHasFooBar+0x214):
undefined reference to `_d_newclass'
.objs/ddl-elf-ELFObjLoader.o:(.rodata+0x28): undefined reference to
`_D3ddl20DynamicLibraryLoader20DynamicLibraryLoader14getLibraryTypeMFZAa'
.objs/ddl-elf-ELFObjLoader.o:(.rodata+0x2c): undefined reference to
`_D3ddl20DynamicLibraryLoader20DynamicLibraryLoader14canLoadLibraryMFS3ddl10FileBuffer10FileBufferZb'
.objs/ddl-elf-ELFObjLoader.o:(.rodata+0x30): undefined reference to
`_D3ddl20DynamicLibraryLoader20DynamicLibraryLoader4loadMFC3ddl14LoaderRegistry14LoaderRegistryS3ddl10FileBuffer10FileBufferZC3ddl14DynamicLibrary14DynamicLibrary'
.objs/ddl-DynamicLibrary.o:(.rodata+0x28): undefined reference to
`_D3ddl14DynamicLibrary14DynamicLibrary9getSymbolMFAaZPS3ddl12ExportSymbol12ExportSymbol'
.objs/ddl-DynamicLibrary.o:(.rodata+0x2c): undefined reference to
`_D3ddl14DynamicLibrary14DynamicLibrary10getModulesMFZAC3ddl13DynamicModule13DynamicModule'
.objs/ddl-DynamicLibrary.o:(.rodata+0x30): undefined reference to
`_D3ddl14DynamicLibrary14DynamicLibrary7getTypeMFZAa'
.objs/ddl-DynamicLibrary.o:(.rodata+0x34): undefined reference to
`_D3ddl14DynamicLibrary14DynamicLibrary13getAttributesMFZHAaAa'
.objs/ddl-DynamicLibrary.o:(.rodata+0x3c): undefined reference to
`_D3ddl14DynamicLibrary14DynamicLibrary18getModuleForSymbolMFAaZC3ddl13DynamicModule13DynamicModule'
.objs/ddl-DynamicLibrary.o:(.rodata+0x40): undefined reference to
`_D3ddl14DynamicLibrary14DynamicLibrary11getResourceMFAaZAh'
.objs/ddl-DynamicModule.o:(.rodata+0x28): undefined reference to
`_D3ddl13DynamicModule13DynamicModule7getNameMFZAa'
.objs/ddl-DynamicModule.o:(.rodata+0x38): undefined reference to
`_D3ddl13DynamicModule13DynamicModule10getSymbolsMFZAS3ddl12ExportSymbol12ExportSymbol'
.objs/ddl-DynamicModule.o:(.rodata+0x3c): undefined reference to
`_D3ddl13DynamicModule13DynamicModule9getSymbolMFAaZPS3ddl12ExportSymbol12ExportSymbol'
.objs/ddl-DynamicModule.o:(.rodata+0x40): undefined reference to
`_D3ddl13DynamicModule13DynamicModule20getSymbolLineNumbersMFZAS3ddl16SymbolLineNumber16SymbolLineNumber'
.objs/ddl-DynamicModule.o:(.rodata+0x44): undefined reference to
`_D3ddl13DynamicModule13DynamicModule13resolveFixupsMFZv'
.objs/ddl-DynamicModule.o:(.rodata+0x48): undefined reference to
`_D3ddl13DynamicModule13DynamicModule10isResolvedMFZb'
.objs/ddl-DynamicLibraryLoader.o:(.rodata+0x28): undefined reference to
`_D3ddl20DynamicLibraryLoader20DynamicLibraryLoader14getLibraryTypeMFZAa'
.objs/ddl-DynamicLibraryLoader.o:(.rodata+0x2c): undefined reference to
`_D3ddl20DynamicLibraryLoader20DynamicLibraryLoader14canLoadLibraryMFS3ddl10FileBuffer10FileBufferZb'
.objs/ddl-DynamicLibraryLoader.o:(.rodata+0x30): undefined reference to
`_D3ddl20DynamicLibraryLoader20DynamicLibraryLoader4loadMFC3ddl14LoaderRegistry14LoaderRegistryS3ddl10FileBuffer10FileBufferZC3ddl14DynamicLibrary14DynamicLibrary'
collect2: ld returned 1 exit status
-------------------------
sorry if that was pointless*/
sorry if *this* is pointless. (I'm a bit frustrateh)