Aggiungere libreria C++

Super Squirrel
Salve a tutti.

Ho scaricato un archivio con alcuni file .c ed un file .h ed uno .mak che dovrebbero costituire una libreria per i numeri razionali.
Cosa devo fare per usare tale libreria in code blocks?

Premetto che la mia conoscenza si limita ad un'esame di fondamenti di informatica.

Risposte
onlyReferee
Ciao Super Squirrel :!:
In teoria ti basta includere soltanto il file con estensione ".h" mediante la classica clausola "include" con cui includi altre librerie come ad esempio "conio.h". Mi pare che gli stessi li puoi piazzare direttamente nella cartella in cui c'è il sorgente del tuo programma (vado un attimo a memoria e spero di non sbagliarmi).

minomic
Sì, direi che onlyReferee ha ragione. Comunque nella maggior parte delle librerie (per non dire in tutte) è incluso almeno un file README o INSTALL o simile che spiega come utilizzare la libreria stessa. Spesso altre informazioni si trovano direttamente sul sito dal quale hai effettuato il download.

Ciao.

onlyReferee
Sì, vero minomic. Solitamente chi mette a disposizione la libreria online dovrebbe fornire anche delle brevi istruzioni su come caricarla (ho comunque usato il condizionale appositamente ;-)).

Super Squirrel
Ho provato come detto da onlyReferee nel primo post, ma compilando mi dà il seguente errore: c99 mode required.
Cercando in giro ho letto che bisogna aggiungere la stringa"-std=c99" in una finestra delle impostazioni di compilazione di code blocks, ma non cambia nulla.
Sul sito dove ho preso la libreria c'è scritto che un modo di installarla su windows è di utilizzare il file.mak aprendolo con un programma che si chiama make.exe, ho provato a farlo, ma nel momento in cui apro make.exe mi si chiude subito.

vict85
Ti si chiude subito ma ti avrà creato dei file immagino. Se ci fornisci il nome della libreria (dato che l'hai presa da internet non penso sia un problema) potremmo darti consigli migliori.

Comunque quella è una libreria c99 sembra, cioè segue lo standard del '99 del C. Tu invece affermi di programmare in C++. c99 e c++98 (che immagino sia le versione di default che stai usando) non sono interamente compatibili. Potresti quindi essere costretto a compilare la libreria a parte e linkarla come libreria statica. Oppure puoi usare il C99 per tutto il tuo programma.

apatriarca
Se la libreria è composta da file *.c e *.h allora direi che l'ipotesi più sensata sia quella di prendere tutti i file e includerli nel tuo progetto. Devi infatti probabilmente compilare tutti i file *.c e linkarli al tuo programma (e il modo più semplice è compilare tutto insieme).

Super Squirrel
Provato, ma compilando mi dà sempre il seguente errore: c99 mode required!

Cmq ci avevo rinunciato, quindi ho iniziato a crearmi io dei sottoprogrammi che mi aiutassero con le frazioni.
Grazie a tutti per i preziosi consigli, ne terrò conto se dovessi avere problemi simili altre volte.

vict85
In effetti una libreria per i razionali non è complicatissima. Se tu programmi in C++ ne puoi comunque trovare in C++ (invece che in c99). Mi sembra che Boost ne includa una per esempio. http://www.boost.org/doc/libs/1_57_0/li ... index.html
Se non sei troppo pratico ti tamplate potresti trovarla un po' difficile da leggere. Per l'installazione basta seguire i tutorial in rete.

Comunque ho cercato in rete velocemente e penso che la libreria incriminata sia questa http://www.electroyou.it/dirtydeeds/wik ... -razionali
In questo caso, dopo aver lanciato il make, dovresti avere un librational.a nella cartella in questione. Perciò il problema è solamente una questione di linking.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.