I miei rapidi due bit su questo: 10 (mi dispiace terribilmente scherzo).
Per espandere leggermente, ecco:
1- Una libreria statica può dipendere da un'altra libreria statica, niente o anche una libreria dinamica: nelle prime due istanze tutto il codice per la nuova libreria statica verrebbe incorporato nella nuova sll, tuttavia, la terza opzione, a seconda su ambiente potrebbe portare a sll avere uno dei seguenti risultati,
- conterrebbe le versioni statiche del codice richiesto da esso raccolte dalla DLL
- o, molto più orribilmente, avresti una libreria statica che, se inserita in un progetto, causerebbe il requisito di spedizione con una DLL, rompendo l'intero punto del collegamento statico.
Quindi, in breve, puoi collegare una libreria statica a una libreria statica
2- se lib1 e lib2 sono entrambi statici e lib1 è stato collegato a lib2, allora tutte le funzionalità di lib2 sarebbero disponibili in lib1 senza la necessità di includere lib2 poichè lib2 sarebbe staticamente collegato in lib1 (si pensi alle bambole russe, dove lib2 è il più piccolo)
Nello scenario che descrivi ci deve essere una funzionalità discreta disponibile in ciascuno dei file che devi includere, che non è linkato staticamente, quindi la necessità di più file, altrimenti avresti un singolo file da includere e dovresti va bene.
Prendi il seguente:
Un file .h con riferimenti a 6 librerie collegate staticamente: è necessario includere 7 file nel progetto per ottenere la piena funzionalità
Unasllcheèstatacreatadadettofile.hrichiederebbesololanuovaslldaincludereperilcollegamentoallacompilazione:
Spero che questo aiuti e che ho capito quello che stavi chiedendo.