Estoy intentando compilar ejemplo de Boost página de filtros Gzip:Boost filtros Gzip: compilar failes
#include <fstream>
#include <iostream>
#include <boost/iostreams/filtering_streambuf.hpp>
#include <boost/iostreams/copy.hpp>
#include <boost/iostreams/filter/gzip.hpp>
int main()
{
using namespace std;
ifstream file("hello.gz", ios_base::in | ios_base::binary);
filtering_streambuf<input> in;
in.push(gzip_decompressor());
in.push(file);
boost::iostreams::copy(in, cout);
}
Por desgracia mi g ++ devuelve errores:
gzlib.cpp: In function ‘int main()’:
gzlib.cpp:12:3: error: ‘filtering_streambuf’ was not declared in this scope
gzlib.cpp:12:23: error: ‘input’ was not declared in this scope
gzlib.cpp:12:30: error: ‘in’ was not declared in this scope
gzlib.cpp:13:29: error: ‘gzip_decompressor’ was not declared in this scope
Qué le pasa a esta función y cómo modificarlo para que funcione? ¡Muchas gracias!
Enlace de alzar filtros Gzip: http://www.boost.org/doc/libs/release/libs/iostreams/doc/classes/gzip.html
Hay un montón de errores, así que he puesto la salida en pastebin. ¿Puede ser que mi Boost funcione incorrectamente? http://pastebin.com/fG2ZqpaJ – ghostmansd
@ghostmansd: Como se menciona [aquí] (http://www.boost.org/doc/libs/release/libs/iostreams/doc/classes/gzip.html#installation), necesitas vincular a 'zlib' para que esto funcione. 'zlib' es externo a' boost', pero generalmente está preinstalado en sistemas UNIX, y puede descargarse desde [aquí] (http://zlib.net/). – Mankarse
Compilo usando -lz, pero no ayuda. – ghostmansd