View Full Version : [C++] DLL indipendente
Ciao ragazzi,
ho un problema con una DLL di mia produzione che è adibita a fare da motore di calcolo per vari applicativi.
la DLL è sviluppata in C++ con Dev-Cpp 4.9.9.2 sotto Windows e necessita a sua volta di alcune funzioni della GSL.
Fino a qualche tempo fa sono riuscito a produrre la mia DLL senza aver necessità di distribuire altri pacchetti, ma purtroppo poi ho cambiato computer e non sono riuscito a riprodurre l'ambiente.
Insomma, adesso se compilo la DLL sono obbligato a portarmi dietro la libgsl.dll (e un'altra) altrimenti mi viene fuori un errore a run-time che segnala la mancanza di tale dll.
Pensavo che fosse un problema di link statici-dinamici, ma non so come risolvere.
Avete idee da suggerirmi?
grazie
nessuno che lavora con le DLL?
_Claudio
26-11-2007, 12:18
Ciao ragazzi,
ho un problema con una DLL di mia produzione che è adibita a fare da motore di calcolo per vari applicativi.
la DLL è sviluppata in C++ con Dev-Cpp 4.9.9.2 sotto Windows e necessita a sua volta di alcune funzioni della GSL.
Fino a qualche tempo fa sono riuscito a produrre la mia DLL senza aver necessità di distribuire altri pacchetti, ma purtroppo poi ho cambiato computer e non sono riuscito a riprodurre l'ambiente.
Insomma, adesso se compilo la DLL sono obbligato a portarmi dietro la libgsl.dll (e un'altra) altrimenti mi viene fuori un errore a run-time che segnala la mancanza di tale dll.
Pensavo che fosse un problema di link statici-dinamici, ma non so come risolvere.
Avete idee da suggerirmi?
grazie
La usi solo te da quanto ho capito tale libreria...
Mi sembra palese che all'interno della dll che hai creato ci sono riferimenti ad altre dll che giustamente vengono richieste (dipendenze di basso livello tra chiamate a funzione)...
variabilepippo
26-11-2007, 12:53
Hai provato a specificare l'opzione -static al linker?
Evidentemente prima avevi linkato staticamente la dll alla libreria libgsl.a.
Evidentemente prima avevi linkato staticamente la dll alla libreria libgsl.a.
ah, dunque serve il flag -static e poi il .a ? dovrei provare così, però mi sa che è proprio questo.. ma com'è possibile che la differenza di KB tra prima ed ora è più o meno identica? se avessi linkato staticamente non dovrebbe essere molto più grande quella di prima? o forse vengono importati solo i pochi metodi che uso..
grazie
La usi solo te da quanto ho capito tale libreria...
no, perchè? è molto famosa in ambito matematico..
ciao
_Claudio
27-11-2007, 11:02
no, perchè? è molto famosa in ambito matematico..
ciao
Ah è solo un problema di compilazione... (scusa ma sono alquanto arrugginito con le dll, e soprattutto in C++)
Comunque se ricordo bene con i link statici vengono importati solo i metodi che utilizzi, ma non so come vengono risolte eventuali ulteriori dipendenze...
si, credo che vengano importati solo i metodi necessari, per questo la dll che ottenevo prima era qualche KB + grande.
ciao a tutti
è andato benissimo il -static :)
grazie!
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.