Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Wed 06 July 2011 10:19

yopyop25
Participant actif
Lieu: besançon
Date d'inscription: 2 Jun 2008
Messages: 144

QGIS 1.8 : Compiler avec gdal 1.9

Bonjour,

J'ai réussi a compiler GDAL 1.9 (support PDF et EDIGEO) sur mon Ubuntu 11.04 amd64.
Maintenant je souhaite compiler QGIS dév avec ce GDAL mais je n'y arrive pas !

GDAL est installé ici :

Code:

/opt/GDAL18

Voic ma démarche pour Qgis :

Code:

cd home/dev
git clone git://github.com/qgis/Quantum-GIS.git
cd Quantum-GIS
git remote add upstream git://github.com/qgis/Quantum-GIS.git
mkdir build
cd build
ccmake ..
make
sudo make install

Dans le ccmake .. je définis le path pour GDAL comme ceci :

Code:

GDAL_CONFIG                      /opt/gdal18/bin/gdal-config                                       
GDAL_CONFIG_PREFER_FWTOOLS_PAT   /opt/gdal18/bin/gdal-config                                       
GDAL_CONFIG_PREFER_PATH          /opt/gdal18/bin/gdal-config                                       
GDAL_INCLUDE_DIR                 /opt/gdal18/include                                               
GDAL_LIBRARY                     /opt/gdal18/lib/libgdal.a

Je ne sais pas trop quoi mettre en fait !
ensuite je fais 'c' pour configure, puis 'g' pour générer le makefile et enfin make et il me retourne ceci :

Code:

[  0%] Built target version
[ 17%] Built target qgis_core
[ 19%] Built target qgis_analysis
[ 26%] Built target ui
[ 37%] Built target qgis_gui
Linking CXX executable qgis
../core/libqgis_core.so.1.8.0: undefined reference to `BaseStream::BaseStream(Object*, unsigned int)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_bind_int'
../core/libqgis_core.so.1.8.0: undefined reference to `PDFDoc::getPage(int)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_double'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_bind_double'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_text'
../core/libqgis_core.so.1.8.0: undefined reference to `error(int, char*, ...)'
../core/libqgis_core.so.1.8.0: undefined reference to `Dict::getKey(int)'
../core/libqgis_core.so.1.8.0: undefined reference to `Object::free()'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_free_table'
../core/libqgis_core.so.1.8.0: undefined reference to `GooString::GooString(char const*)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_bytes'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_last_insert_rowid'
../core/libqgis_core.so.1.8.0: undefined reference to `SplashOutputDev::SplashOutputDev(SplashColorMode, int, bool, unsigned char*, bool, bool)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_prepare'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_name'
../core/libqgis_core.so.1.8.0: undefined reference to `Array::get(int, Object*)'
../core/libqgis_core.so.1.8.0: undefined reference to `setErrorFunction(void (*)(int, char*, __va_list_tag*))'
../core/libqgis_core.so.1.8.0: undefined reference to `PDFDoc::~PDFDoc()'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_finalize'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_bind_text'
../core/libqgis_core.so.1.8.0: undefined reference to `Stream::getChars(int, unsigned char*)'
../core/libqgis_core.so.1.8.0: undefined reference to `Stream::getLine(char*, int)'
../core/libqgis_core.so.1.8.0: undefined reference to `BaseStream::~BaseStream()'
../core/libqgis_core.so.1.8.0: undefined reference to `Stream::getRawChar()'
../core/libqgis_core.so.1.8.0: undefined reference to `SplashOutputDev::startDoc(XRef*)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_free'
../core/libqgis_core.so.1.8.0: undefined reference to `Catalog::getPage(int)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_exec'
../core/libqgis_core.so.1.8.0: undefined reference to `typeinfo for BaseStream'
../core/libqgis_core.so.1.8.0: undefined reference to `PDFDoc::displayPageSlice(OutputDev*, int, double, double, int, bool, bool, bool, int, int, int, int, bool (*)(void*), void*, bool (*)(Annot*, void*), void*)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_bind_blob'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_step'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_get_table'
../core/libqgis_core.so.1.8.0: undefined reference to `Object::getTypeName()'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_open'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_reset'
../core/libqgis_core.so.1.8.0: undefined reference to `Dict::lookup(char*, Object*, std::set<int, std::less<int>, std::allocator<int> >*)'
../core/libqgis_core.so.1.8.0: undefined reference to `PDFDoc::PDFDoc(BaseStream*, GooString*, GooString*, void*)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_blob'
../core/libqgis_core.so.1.8.0: undefined reference to `Stream::getPSFilter(int, char*)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_int'
../core/libqgis_core.so.1.8.0: undefined reference to `GlobalParams::GlobalParams(char const*)'
../core/libqgis_core.so.1.8.0: undefined reference to `globalParams'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_count'
../core/libqgis_core.so.1.8.0: undefined reference to `Stream::getRawChars(int, int*)'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_close'
../core/libqgis_core.so.1.8.0: undefined reference to `PDFDoc::getNumPages()'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_decltype'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_column_type'
../core/libqgis_core.so.1.8.0: undefined reference to `GooString::~GooString()'
../core/libqgis_core.so.1.8.0: undefined reference to `sqlite3_errmsg'
collect2: ld returned 1 exit status
make[2]: *** [src/app/qgis] Erreur 1
make[1]: *** [src/app/CMakeFiles/qgis.dir/all] Erreur 2
make: *** [all] Erreur 2

Je ne sais pas comment corriger mes erreurs, qui peut m'aider ?


Merci.

Hors ligne

 

#2 Wed 06 July 2011 11:26

cyrille
Participant assidu
Date d'inscription: 7 Feb 2006
Messages: 387

Re: QGIS 1.8 : Compiler avec gdal 1.9

essaies de remonter d'un cran dans l'arborescence ?

Code:

GDAL_CONFIG                      /opt/gdal18/bin/                                    
GDAL_CONFIG_PREFER_FWTOOLS_PAT   /opt/gdal18/bin/                                       
GDAL_CONFIG_PREFER_PATH          /opt/gdal18/bin/                                       
GDAL_INCLUDE_DIR                 /opt/gdal18/                                          
GDAL_LIBRARY                     /opt/gdal18/lib/

?

Dernière modification par cyrille (Wed 06 July 2011 11:28)

Hors ligne

 

#3 Wed 06 July 2011 11:54

yopyop25
Participant actif
Lieu: besançon
Date d'inscription: 2 Jun 2008
Messages: 144

Re: QGIS 1.8 : Compiler avec gdal 1.9

Je suis remonté d'un cran partout sauf pour la lib où il a demandé le chemin complet vers /opt/gdal18/lib/libgdal.a
configure et générer sont passés mais au make c'est le même problème...

Une autre idée ?

Qui a réussit ?

Yohan.

Hors ligne

 

#4 Thu 07 July 2011 00:18

rouault
Participant assidu
Date d'inscription: 26 Apr 2009
Messages: 166

Re: QGIS 1.8 : Compiler avec gdal 1.9

Le compilateur se plaint de ne pas trouver des dépendances de libgdal, en l'occurence sqlite3 et poppler. Donc essaye d'ajouter -lsqlite3 -lpoppler à GDAL_LIBRARY . Le fait de mettre libgdal.a me parait louche, ça veut dire que tu vas linker GDAL en statique. Possible, mais pas très courant comme pratique (à chaque fois que tu modifieras/mettras à jour GDAL tu seras obligé de relinker qgis). Moi je mettrais plutot -L/opt/gdal18/lib/ -lgdal -lsqlite3 -lpoppler. Bon je n'ai pas essayé et je suis loin de maitriser cmake, mais ça doit être un truc du genre aux petites variations près nécessaires pour le faire marcher ;-)

Hors ligne

 

#5 Fri 08 July 2011 10:09

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9855
Site web

Re: QGIS 1.8 : Compiler avec gdal 1.9

Bonjour,

As tu relancer la commande ldconfig (en éditant si besoin son fichier de config /etc/ld.so.conf) pour enregistrer les lib ainsi installées ?

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#6 Fri 08 July 2011 12:49

yopyop25
Participant actif
Lieu: besançon
Date d'inscription: 2 Jun 2008
Messages: 144

Re: QGIS 1.8 : Compiler avec gdal 1.9

Bonjour,

Pour rouault, je regarde ce week-end, je remplace donc :

Code:

GDAL_LIBRARY                     /opt/gdal18/lib/libgdal.a

par :

Code:

GDAL_LIBRARY                     -L/opt/gdal18/lib/ -lgdal -lsqlite3 -lpoppler

Pour Yves, j'ai fait un ldconfig dans la console, mais je n'ai pas édité le fichier /etc/ld.so.conf qui ne contient qu'une ligne d'ailleurs qui pointe vers un repertoire /etc/ld.so.conf.d je crois (je ne suis pas sur mon poste en ce moment !).

Je vois tout ça ce week-end et ferai retour !

Merci en attendant.

Yohan

Hors ligne

 

#7 Sat 09 July 2011 15:58

yopyop25
Participant actif
Lieu: besançon
Date d'inscription: 2 Jun 2008
Messages: 144

Re: QGIS 1.8 : Compiler avec gdal 1.9

Bonjour,

J'ai donc mis ceci dans le ccmake ..

Code:

GDAL_LIBRARY                     -L/opt/gdal18/lib/ -lgdal -lsqlite3 -lpoppler

et le make a pu continuer mais il y avait encore une erreur, il manquait un truc du genre `lo_open'...
un petit google sur `lo_open' me renvois vers postgres qui était à ON dans le ccmake donc passage à OFF et le make continu...
Je vais peut-être réussir !!!

Merci en attendant.

Yohan

Hors ligne

 

#8 Mon 11 July 2011 09:41

yopyop25
Participant actif
Lieu: besançon
Date d'inscription: 2 Jun 2008
Messages: 144

Re: QGIS 1.8 : Compiler avec gdal 1.9

Bon, le passage à OFF de prostgres n'a pas fait grand chose...
J'ai donc installé postgis et repassé à ON, mais toujours le même problème :

Code:

Linking CXX executable qgis_help
../core/libqgis_core.so.1.8.0: undefined reference to `lo_open'
../core/libqgis_core.so.1.8.0: undefined reference to `PQputCopyEnd'
../core/libqgis_core.so.1.8.0: undefined reference to `PQresultErrorMessage'
../core/libqgis_core.so.1.8.0: undefined reference to `PQstatus'
../core/libqgis_core.so.1.8.0: undefined reference to `PQsetNoticeProcessor'
../core/libqgis_core.so.1.8.0: undefined reference to `PQnfields'
../core/libqgis_core.so.1.8.0: undefined reference to `PQgetvalue'
../core/libqgis_core.so.1.8.0: undefined reference to `PQclear'
../core/libqgis_core.so.1.8.0: undefined reference to `PQgetlength'
../core/libqgis_core.so.1.8.0: undefined reference to `PQfmod'
../core/libqgis_core.so.1.8.0: undefined reference to `PQconnectdb'
../core/libqgis_core.so.1.8.0: undefined reference to `PQntuples'
../core/libqgis_core.so.1.8.0: undefined reference to `PQexecParams'
../core/libqgis_core.so.1.8.0: undefined reference to `PQfname'
../core/libqgis_core.so.1.8.0: undefined reference to `PQfformat'
../core/libqgis_core.so.1.8.0: undefined reference to `PQfinish'
../core/libqgis_core.so.1.8.0: undefined reference to `lo_close'
../core/libqgis_core.so.1.8.0: undefined reference to `PQerrorMessage'
../core/libqgis_core.so.1.8.0: undefined reference to `lo_read'
../core/libqgis_core.so.1.8.0: undefined reference to `PQputCopyData'
../core/libqgis_core.so.1.8.0: undefined reference to `lo_write'
../core/libqgis_core.so.1.8.0: undefined reference to `PQgetResult'
../core/libqgis_core.so.1.8.0: undefined reference to `PQgetisnull'
../core/libqgis_core.so.1.8.0: undefined reference to `PQescapeStringConn'
../core/libqgis_core.so.1.8.0: undefined reference to `PQexec'
../core/libqgis_core.so.1.8.0: undefined reference to `lo_creat'
../core/libqgis_core.so.1.8.0: undefined reference to `PQsetClientEncoding'
../core/libqgis_core.so.1.8.0: undefined reference to `PQftype'
../core/libqgis_core.so.1.8.0: undefined reference to `PQresultStatus'
collect2: ld returned 1 exit status
make[2]: *** [src/helpviewer/qgis_help] Erreur 1
make[1]: *** [src/helpviewer/CMakeFiles/qgis_help.dir/all] Erreur 2
make: *** [all] Erreur 2

Si je comprend bien, il cherche a linker qgis_help (Linking CXX executable qgis_help) mais ensuite il bute sur lo_open qui semble être du postgres...

Que dois-je faire ?

Yohan

Hors ligne

 

#9 Mon 11 July 2011 10:59

Sylvain33
Participant assidu
Lieu: Mauritius
Date d'inscription: 13 Feb 2007
Messages: 320
Site web

Re: QGIS 1.8 : Compiler avec gdal 1.9

Hors ligne

 

#10 Mon 11 July 2011 11:37

yopyop25
Participant actif
Lieu: besançon
Date d'inscription: 2 Jun 2008
Messages: 144

Re: QGIS 1.8 : Compiler avec gdal 1.9

Bonjour,

Pour Sylvain33 :  je regarde çà de plus près mais j'ai enfin réussit !

Qgis 1.8 avec Gdal 1.9 sont enfin installés sur mon ubuntu, j'ai donc le support du PDF et de l'EDIGEO...

J'ai tout repris la compilation avec suppression du dossier build et sans recharger les sources.
J'ai donc recompilé gdal 1.9 avec le support de python au préalable voir ce message :
http://georezo.net/forum/viewtopic.php?pid=194991

voici donc ma procédure :

Code:

cd home/dev
git clone git://github.com/qgis/Quantum-GIS.git
cd Quantum-GIS
git remote add upstream git://github.com/qgis/Quantum-GIS.git
mkdir build
cd build
ccmake ..
make
sudo make install

avec pour ccmake :

Code:

GDAL_CONFIG                      /opt/gdal/bin                              
GDAL_CONFIG_PREFER_FWTOOLS_PAT   /opt/gdal/bin                              
GDAL_CONFIG_PREFER_PATH          /opt/gdal/bin                              
GDAL_INCLUDE_DIR                 /opt/gdal/include                          
GDAL_LIBRARY                     /opt/gdal/lib/libgdal.so

J'ai quand même installé postgis et txt2tags, mais je ne pense que ça change quelque chose.

Ne pas oublier de lancer le bon qgis dans un terminal :

Code:

/opt/qgis/bin/qgis

Merci a tous ceux qui m'ont aidé.

Yohan.

Hors ligne

 

Pied de page des forums

Powered by FluxBB