Unire più DLL native in una DLL
Domanda
Ho un sacco di piccole DLL che vorrei trasformare in una grande (er) DLL (come suggerito qui ). Posso farlo unendo i miei progetti, ma vorrei un modo meno invadente.
È possibile unire più DLL in un'unica unità?
Una ricerca veloce ha trovato questa discussione che afferma che ciò non è possibile. Qualcuno sa diversamente?
Nota che sto parlando di codice C ++ nativo non .NET, quindi ILMerge è uscito.
Soluzione
Non so come unire le DLL, ma sono sicuro che puoi collegare i file degli oggetti intermedi in una DLL. Ciò richiederebbe solo modifiche allo script di compilazione.
Altri suggerimenti
Per quanto ne so non è possibile unire direttamente i file DLL. Ma dovrebbe essere possibile con librerie statiche o file oggetto. Se è possibile creare librerie statiche dei propri progetti, è possibile unirle utilizzando la rel Library Manager estraendo i file oggetto da tutte le librerie e impacchettandoli in una nuova libreria.
Inoltre, c'era un prodotto che creava un .LIB da .DLLs. Potresti quindi collegare il tuo exe a quel .LIB e sbarazzarti del tutto .DLLs. Forse potresti collegare un .DLL dal .LIB - non ne sono sicuro.
Il prodotto è qui: http://www.binary-soft.com/dll2lib/dll2lib.htm Non sono sicuro, se funziona più, se è supportato o addirittura venduto. Sembra sicuramente costoso, ma aveva un periodo di prova gratuito (abilitato per nag).