Per fornire più dettagli di quelli che sono stati brevemente menzionati dagli altri utenti, ecco come sono riuscito a lavorare con gzstream
sul mio computer.
In primo luogo, ho scaricato gzstream
e installato nella mia casa (le ultime due righe possono essere aggiunti al vostro ~/.bash_profile
):
cd ~/src
mkdir GZSTREAM
cd GZSTREAM/
wget http://www.cs.unc.edu/Research/compgeom/gzstream/gzstream.tgz
tar xzvf gzstream.tgz
cd gzstream
make
export CPLUS_INCLUDE_PATH=$HOME/src/GZSTREAM/gzstream
export LIBRARY_PATH=$HOME/src/GZSTREAM/gzstream
Poi, ho provato l'installazione:
make test
...
# *** O.K. Test finished successfully. ***
Infine , ho scritto un programma fittizio per verificare che ho potuto utilizzare in modo efficace la libreria:
cd ~/temp
vim test.cpp
Ecco il codice (molto minimalista, dovrebbe essere molto migliorato per le applicazioni reali!):
#include <iostream>
#include <string>
#include <gzstream.h>
using namespace std;
int main (int argc, char ** argv)
{
cout << "START" << endl;
igzstream in(argv[1]);
string line;
while (getline(in, line))
{
cout << line << endl;
}
cout << "END" << endl;
}
Ecco come ho compilato:
gcc -Wall test.cpp -lstdc++ -lgzstream -lz
E, ultimo ma non meno importante, ecco come l'ho usato:
ls ~/ | gzip > input.gz
./a.out input.gz
START
bin/
src/
temp/
work/
END
Quindi è necessario utilizzare igzstream e trovare il problema o qualsiasi soluzione è ok? –
LGPL non è un'opzione per me, dal momento che sto sviluppando per iOS, conosci un'alternativa non virale? – rraallvv