Repository 32bit  Forum
Repository 64bit  Wiki

QGIS: pacchetto SlackBuild che abilita ECW su slack 14.1

Se avete problemi con l'installazione e la configurazione di Slackware64 postate qui. Non usate questo forum per argomenti che trattano la Slackware32 o generali... per quelli usate rispettivamente il forum Slackware e Gnu/Linux in genere.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware64 usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Slackware64, se l'argomento è Slackware32 o generale usate rispettivamente il forum Slackware o Gnu/Linux in genere.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

QGIS: pacchetto SlackBuild che abilita ECW su slack 14.1

Messaggioda gian_d » mer lug 16, 2014 17:35

Ciao a tutti, questo è il mio primo messaggio sul forum di slacky.eu

Non so quanti si occupino di GIS e siano interessati alla questione. Fino a pochi mesi fa usavo una Slackware 13.1 a 32 bit e da QGIS avevo accesso ai raster in formato proprietario ECW. Probabilmente (non ricordo) avevo installato vecchie versioni di QGIS e librerie quando ancora non c'erano problemi per l'accesso a questo formato. Poi, causa decesso della CPU ho dovuto fare l'upgrade di tutto, passando alla 64. E qui sono iniziati i problemi. Per parecchi giorni mi sono sbattuto per cercare di abilitare il formato ECW senza venirne a capo: il problema è che le nuove versioni delle librerie che gestiscono l'ECW sono rilasciate senza sorgenti e la ricompilazione di GDAL non trova queste librerie. So che il problema capita su diverse distro, sul Web ci sono diverse richieste e tutorial relativi alla difficoltà di accedere a questo formato, ma i tutorial sono rivolti ad utenti Ubuntu. Sta di fatto che anche su Ubuntu non sono comunque riuscito ad abilitare questo formato.

Alla fine sono riuscito a venirne a capo usando una vecchia libreria del 2006 di cui sono pubblici i sorgenti ed è possibile perciò ricompilarla applicando alcune patch. Deve essere fatto tutto prima dell'installazione di GDAL. Se avete perciò GDAL già installato e non supporta l'ECW, disinstallatelo. Per l'occorrenza ho allestito uno slackbuild per la costruzione di un pacchetto .tgz. Sulla Slack 14.1-64bit funziona egregiamente, non so per altre versioni. Non posso mettere a disposizione direttamente il pacchetto da installare perché credo che non sia consentito dalle licenze dell'attuale proprietario: ciascuno si deve installare o ricompilare per conto suo.

Lo slackbuild può essere scaricato da qui: http://www.giand.it/dowload/libecwj2.tar.gz. Contiene lo script slackbuild e le patch, mentre la libreria libecwj2-3,3 release 2009-09-06 dovrà essere scaricata separatamente da uno dei vari mirror. Attenzione, deve essere scaricato un archivio con questa denominazione libecwj2-3.3-2009-09-06.zip

La procedura in parole povere:
1) scaricare lo slackbuild e scompattarlo
2) googlare e scaricare un archivio zip dei sorgenti della libreria libecwj2-3.3-2009-09-06 (l'archivio deve essere salvato nella directory contenente lo script dello slackbuild
3) lanciare lo slackbuild e al termine installare il pacchetto (sarà creato nella directory /tmp
4) scaricare da slackbuilds.org lo SlackBuild per l'installazione di GDAL 1.11.0
5) modificare lo script gdal.SlackBuild aggiungendo l'argomento --with-ecw=/usr/local al comando ./configure
7) lanciare lo slackbuild

Comunque ho preparato una guida più logorroica e dettagliata qui: http://www.giand.it/tic/linux/Abilitare_ECW_in_QGIS_su_Slackware_64
Chiedo scusa per lo spam, mi auguro che sia di utilità per qualcuno
gian_d
Linux 1.0
Linux 1.0
 
Messaggi: 12
Iscritto il: mer lug 16, 2014 16:35
Località: Sardinia
Nome Cognome: Giancarlo Dessì
Slackware: 14.1
Kernel: 3.10.17
Desktop: KDE

Re: QGIS: pacchetto SlackBuild che abilita ECW su slack 14.1

Messaggioda miklos » mer lug 16, 2014 18:05

Ciao e benvenuto :)
Per quanto riguarda l'argomento del topic da un lato sono piu' propenso alle soluzioni open.. dall'altro mi ha incuriosito il problema che hai dovuto affrontare e leggendo l'errore che hai dettagliato nell'articolo + il fatto che hai specificato che stai usando una sistema a 64bit mi viene da chiederti.. ma l'sdk di cui parli potrebbe essere un binario compilato a 32bit?!?!
In questo caso l'errore ci potrebbe anche stare.. su una slackware stock a 64bit col compilatore a 64bit linkare una libreria a 32bit non credo si possa fare (quando ti dice che non trova la libreria in realtà potrebbe essere ben altro l'errore dato che di solito il configure prova a compilare un semplice programma per verificare se una determinata libreria sia usabile o meno.. come controprova dovresti guardare dentro il configure.log e vedere meglio l'errore)

Ciau
ho visto cose che voi astemi non potete immaginare
miklos
Linux 3.x
Linux 3.x
 
Messaggi: 1273
Iscritto il: lun lug 16, 2007 16:39
Località: Roma
Slackware: 14.1 64bit
Kernel: 3.16.3
Desktop: openbox 3.5.2

Re: QGIS: pacchetto SlackBuild che abilita ECW su slack 14.1

Messaggioda gian_d » mer lug 16, 2014 20:33

Anch'io penso che possa trattarsi di un binario compilato a 32bit, d'altra parte i file generati dal binario di installazione dell'ECW SDK sono in duplice versione, per sistemi a 64 e 32 bit. Non so che dire, tutto il resto è fuori dalla mia portata. Anche la lettura del config.log, in gran parte per me è arabo.

Ho riprovato con l'ECW SDK 5.1 ma non c'è stato verso, compare lo stesso errore sia spostando le librerie in /usr/local/lib64 sia in /usr/local/lib

Dalla lettura del config.log non deduco nulla, ma in gran parte per me è arabo. A parte questo:
Codice: Seleziona tutto
configure:22147: result: no
configure:22147: checking for openjpeg-2.0/openjpeg.h
configure:22147: result: no
configure:22287: checking for FileGDBAPI
configure:22304: result: FileGDBAPI not found.
configure:22480: checking for libNCSEcw.so or libecwj2
configure:22520: error: not found in /usr/local/lib or /usr/local/bin.


Comunque se qualcuno volesse capirci qualcosa il config.log completo può essere letto qui: http://www.giand.it/trash/config_log.txt (sono 3 mila righe...)

Una curiosità (ma probabilmente è normale): nei precedenti tentativi avevo provato sia con l'argomento --with-ecw=/usr/local, sia con l'argomento --with-ecw. Nel primo caso la compilazione si arresta durante il ./configure, nel secondo caso prosegue fino alla generazione del pacchetto slackware. Probabilmente l'errore viene ignorato durante la compilazione.

Un'ultima cosa: anch'io sono orientato ormai da 10 anni ai formati open, ma il caso del formato ECW è particolare. E' un potente algoritmo di compressione che permette di ridurre in modo impressionante il peso dei file riducendo al minimo la qualità. A me serve per lo più per consultare la cartografia IGM della mia regione ad elevati zoom usando un file ECW del peso di soli 1.8 GB. Se dovessi usare dei raster TIFF o bitmap con lo stesso ingrandimento credo che mi servirebbero decine di GB se non centinaia di spazio nei miei hardisk peraltro con carte frazionate in decine di file. Un altro problema è che proprio per lo stesso motivo diversi servizi GIS on line sfruttano questo formato proprio perché adatto per server e bande senza pretese.
gian_d
Linux 1.0
Linux 1.0
 
Messaggi: 12
Iscritto il: mer lug 16, 2014 16:35
Località: Sardinia
Nome Cognome: Giancarlo Dessì
Slackware: 14.1
Kernel: 3.10.17
Desktop: KDE


Torna a Slackware64

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti