[Gfoss] Ratman e problemi di compilazione

Ho provato a compilarmi ratman (http://ratman.sourceforge.net) su Ubuntu 9.10

Dove possibile ho scaricato via apt-get le librerie necessarie segnalate in questa pagina
http://ratman.sourceforge.net/docs/install.html

sulle altre non presenti (nello specifico le spacelib del CRS4 e tinyxml) ho provveduto a compilare e installare.

Sono pero' fermo ad un errore che mi da il compilatore g++
al punto 3 del "HOW TO INSTALL RATMAN"

Nello specifico
g++ -c -pipe -O3 -ffast-math -D_REENTRANT -Wall -W -fPIC -DNDEBUG -D__LIB64__ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I../../../src -I. -I../../../src -I/usr/local/include -I/usr/include -I/usr/include -IRelease -o Release/curlstream.o curlstream.cpp
In file included from curlstream.cpp:1:
curlstream.hpp:57: error: ‘EOF’ was not declared in this scope

con un hack malsano (= senza capire a fondo cosa volesse dire) ho superato il problema (= ho sostituito 'EOF' con un valore numerico alto)

Questa cosa malsana mi permette di passare al punto 4, ma qui ottengo un altro errore a cui mi fermo vista la nefandezza precedente.
In questo caso e' mpiCC ad arrabbiarsi
mpiCC -c -pipe -O3 -ffast-math -O3 -D_REENTRANT -Wall -W -fPIC -DNDEBUG -D__LIB64__ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_ISOC9X_SOURCE=1 -D_ISOC99_SOURCE=1 -D__USE_ISOC9X=1 -D__USE_ISOC99=1 -D_ISOC9X_SOURCE=1 -D_ISOC99_SOURCE=1 -D__USE_ISOC9X=1 -D__USE_ISOC99=1 -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I../../../../src -I/usr/local/include -I/usr/local//include/ -I/usr/include/gdal -I/usr/local//include/ -IRelease -o Release/quad_builder.o quad_builder.cpp
quad_builder.cpp: In member function ‘virtual void vic::geo::quad_builder::out_quad_index_write(int, int, int)’:
quad_builder.cpp:108: error: ‘uint64_t’ was not declared in this scope
quad_builder.cpp:108: error: expected ‘;’ before ‘timestamp’
quad_builder.cpp:110: error: ‘timestamp’ was not declared in this scope

Idee? Suggerimenti? Qualche libreria "troppo nuova" ?

Grazie

On Wed, Nov 25, 2009 at 10:51:38AM +0100, Maurizio Napolitano wrote:

Ho provato a compilarmi ratman (http://ratman.sourceforge.net) su
Ubuntu 9.10

Dove possibile ho scaricato via apt-get le librerie necessarie
segnalate in questa pagina
http://ratman.sourceforge.net/docs/install.html

sulle altre non presenti (nello specifico le spacelib del CRS4 e
tinyxml) ho provveduto a compilare e installare.

Sono pero' fermo ad un errore che mi da il compilatore g++
al punto 3 del "HOW TO INSTALL RATMAN"

Nello specifico
g++ -c -pipe -O3 -ffast-math -D_REENTRANT -Wall -W -fPIC -DNDEBUG
-D__LIB64__ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB
-DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I.
-I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui
-I/usr/include/qt4 -I. -I../../../src -I. -I../../../src
-I/usr/local/include -I/usr/include -I/usr/include -IRelease -o
Release/curlstream.o curlstream.cpp
In file included from curlstream.cpp:1:
curlstream.hpp:57: error: ‘EOF’ was not declared in this scope

con un hack malsano (= senza capire a fondo cosa volesse dire) ho
superato il problema (= ho sostituito 'EOF' con un valore numerico
alto)

Orrore! Al limite EOF e' -1 ma comunque manca io aggiungerei

#include <cstdio>

e magari cambiarei l'inclusione di string.h in cstring, se il codice
che guardo e' lo stesso.

Questa cosa malsana mi permette di passare al punto 4, ma qui
ottengo un altro errore a cui mi fermo vista la nefandezza
precedente.
In questo caso e' mpiCC ad arrabbiarsi
mpiCC -c -pipe -O3 -ffast-math -O3 -D_REENTRANT -Wall -W -fPIC
-DNDEBUG -D__LIB64__ -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE
-D_LARGEFILE64_SOURCE -D_ISOC9X_SOURCE=1 -D_ISOC99_SOURCE=1
-D__USE_ISOC9X=1 -D__USE_ISOC99=1 -D_ISOC9X_SOURCE=1
-D_ISOC99_SOURCE=1 -D__USE_ISOC9X=1 -D__USE_ISOC99=1 -DQT_NO_DEBUG
-DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED
-I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore
-I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I../../../../src
-I/usr/local/include -I/usr/local//include/ -I/usr/include/gdal
-I/usr/local//include/ -IRelease -o Release/quad_builder.o
quad_builder.cpp
quad_builder.cpp: In member function ‘virtual void
vic::geo::quad_builder::out_quad_index_write(int, int, int)’:
quad_builder.cpp:108: error: ‘uint64_t’ was not declared in this scope
quad_builder.cpp:108: error: expected ‘;’ before ‘timestamp’
quad_builder.cpp:110: error: ‘timestamp’ was not declared in this scope

Idee? Suggerimenti? Qualche libreria "troppo nuova" ?

Grazie

Qua ci vorrebbe un

#include <stdint.h>

al posto giusto, il dove e' lasciato per esercizio...

--
Francesco P. Lovergine