View Full Version : [codeblocks] come usare le funzioni in una libreria statica
Ho creato una libreria statica, ma non riesco ad aggangiare le funzioni... aiutoooooo
Devi includere il .h e poi nelle proprietà del progetto, dove vedi scritto linker, devi aggiungere il percorso della libreria .a
non trovo il file .h ???
Se la libreria l'hai fatta te dovresti avere anche il .h con le dichiarazioni delle funzioni :D
forse non sono stato chiaro.... Correggimi se sbaglio ...solitamente se in un file cpp (es.pippo.cpp) raccolgo le procedure che servono e voglio impiegarle in un progetto metto:
#include "path\pippo.cpp"
e mi trovo le procedure a disposizione... e se non voglio includere tutto il file cpp posso fare una interfaccia pippo.h (headers) che mi permette di alleggerire il compilato dalle procedure non usate (mi pare che sia così vero???)
Adesso, Codeblocks ti dice se vuoi creare una libreria static e crea un file .a che secondo quanto avevo appreso basta includere nelle build option.... e poi la directory di residenza in quelle a disposizione del compiler....
Ma a questo punto mi chiedo ma a cosa serve creare un file h se creo una libreria .a di tipo statico??? forse a proteggere il file cpp da occhi indiscreti?
Grazie
ps: sto usando la libreria cross platform e sono molto soddisfatto ....
I .cpp non si includono MAI ;)
Per poter usare più file .cpp all'interno di un progetto, basta includerli nel progetto.
Si includono i .h, in cui ci sono le dichiarazioni delle funzioni e delle classi (in c++ a volte c'è anche il sorgente se usi i template, ma solo perché sei costretto) che rendi disponibili nella libreria statica.
Una libreria statica è formata da un file di libreria (.a o .lib a seconda del compilatore) e da un file .h.
Senza file .h per usare una libreria bisogna comunque ridichiarare le intestazioni delle funzioni.
Il file di libreria è il codice della libreria già compilato e pronto per essere linkato al tuo progetto.
Vantaggi di una libreria statica ? Ad esempio dare ad un utente una porzione di codice da usare senza che la possa modificare. Oppure, il vantaggio principale, rendere disponibili porzioni di codice che vengono riutilizzate da più progetti e che non necessitano di essere ricompilate (il tempo di compilazione può essere anche di ore).
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.