Il Componente Gambas è senz'altro in sé, formalmente, una "libreria" .so; nonostante in Gambas non sia definito in tale modo, dandosi più rilievo alla sua natura costitutiva/funzionale per tale linguaggio.
Esso assume lo status di risorsa che contribuisce, come una tessera di un mosaico, a estendere (come hai detto tu) le funzionalità di Gambas: appunto un "componente" dell'intera impalcatura funzionale del linguaggio Gambas. Tant'è che il "Componente" deve essere installato nel sistema in modo perenne.
Il Componente è in buona sostanza una risorsa che nella maggior parte dei casi si fonda su librerie scritte in C/C++, e che si deve installare nel sistema con tutti i crismi previsti, per poter essere utilizzata.
Esso è un elemento costituente del linguaggio Gambas che consente all'utente di utilizzare nelle forme tipiche del Basic e della programmazione orienttata agli oggetti risorse scritte in C o in C++, che - come tali - sarebbero altrimenti disponibili soltanto nelle modalità previste per tali linguaggi di basso livello (salvo fatto il loro uso in Gambas mediante la parola-chiave Extern).
Va insomma sottolineato che una cosa sono i Componenti - in quanto formali librerie condivise .so - e altro sono le librerie esterne sulle quali i Componenti si fondano.
I Componenti sono, sì, librerie dinamiche condivise, ma si fondano (riscrivendole) su altre librerie condivise, utilizzandone le risorse. Essi sono codice, scritto in C/C++, sulla base di altro codice scritto in C/C++.
Va infine specificato che in Gambas abbiamo due tipi di Componenti:
1) quelli che sono scritti in C/C++ e si fondano su librerie esterne scritte in C o in C++ (esempio: il Componente di Gambas chiamato " gb.compress.zlib " si basa sulla libreria esterna " libz.so ");
2) quelli che sono scritti in puro linguaggio Gambas (un esempio è il Componente " gb.map ").
E' possibile concludere dunque che il Componente, scritto in C/C++, è nella sua essenza una libreria che si fonda sul codice e dunque sulle risorse di un'altra o di altre librerie anch'esse scritte in C/C++.