D hates to be dynamic linked

g g at g.g
Fri Feb 19 13:41:20 PST 2010


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)



More information about the Digitalmars-d mailing list