Naprawianie uszkodzonego GDAL i PROJ.4 na Ubuntu?

13

Rozwiązałem problem z biblioteką, ale pozostały inne, tylko niejasno związane z nie załadowaną biblioteką PROJ.4. Zadałem dla nich kolejne pytanie .

Mój pakiet GDAL i biblioteka PROJ.4 są uszkodzone, co powoduje błędy podczas próby ponownego wyrzucenia plików (patrz stare pytanie poniżej). Nie wiem, czy ten problem zaczął się, gdy przez pomyłkę zainstalowałem inną instancję GDAL, czy wcześniej; jednak odinstalowałem go i ponownie zainstalowałem QGIS i problem pozostaje.

Po każdej ponownej instalacji QGIS ma takie same wtyczki jak poprzednio, więc część powodująca błędy pozostaje niezmieniona przez proces instalacji / dezinstalacji.

Co próbowałem:

  • sudo apt-get remove build-essential python-all-devi sudo apt-get remove gdal-binwyczyścić ręcznie zainstalowany GDAL
  • (Od) instalacja QGIS za pomocą Centrum oprogramowania Ubuntu
  • sudo apt-get --purge autoremove
  • dpkg -l | grep '^rc' | awk '{print $2}' | sudo xargs dpkg --purgei dpkg --list | grep "^rc" | cut -d " " -f 3 | xargs sudo dpkg --purgewyczyścić pliki konfiguracyjne

Wciąż nie ma szczęścia. Znalazłem coś, co wydawało się powiązane , ale dotyczy to systemu Windows, a nie mojego Ubuntu 14.04. Co jeszcze (i jak) powinienem wyczyścić przed kolejną instalacją QGIS?


Pierwotne pytanie:

Staram się ponownie rzutować niektóre pliki kształtów za pomocą ogr2ogr. Zawsze jednak pojawia się następujący błąd:

ERROR 6: Unable to load PROJ.4 library (libproj.so), creation of
OGRCoordinateTransformation failed.
Failed to create coordinate transformation between the
following coordinate systems.  This may be because they
are not transformable, or because projection services
(PROJ.4 DLL/.so) could not be loaded.

Przetestowałem to z różnymi transformacjami, w tym takimi podstawowymi kombinacjami, jak od WGS84 (EPSG: 4326) do UTM (EPSG: 3857), i ten błąd występuje cały czas.

Problem może być spowodowany faktem, że chociaż mam GDAL z moim QGIS (2.10), błędnie zainstalowałem go jeszcze raz (ze źródła, robiąc to tak, jak sugerowała ta odpowiedź ).

Po kilkakrotnym napotkaniu tego problemu próbowałem odinstalować nową instancję GDAL ( sudo apt-get remove build-essential python-all-devi sudo apt-get remove gdal-bin- nie jestem pewien, czy jest ona całkowicie usunięta, czy nie).

W /USR/LIB/mam libproj.so.0i libproj.so.0.7.0nie libproj.so. Nie widzę tego nawet przy pokazanych ukrytych plikach. Jednak gdy próbuję ln -s libproj.so.0.7.0 libproj.so(lub to samo z sudo), narzeka, że libproj.sojuż istnieje.

Pavel V.
źródło
Może to również pomóc usunąć i ponownie zainstalować qgis.
AndreJ
@AndreJ: przeinstalowano i nic się nie zmieniło. Jednak skojarzone pliki wydają się nietknięte (mam te same wtyczki, co przed ponowną instalacją QGIS itp.), Więc spróbuję teraz usunąć je całkowicie.
Pavel V.,
Myślę, że powinieneś edytować tytuł i tagi. Twój problem dotyczy instalacji i możesz zapytać, jak naprawić zepsutą instalację.
user30184,
@ user30184: edytowany zgodnie z sugestią.
Pavel V.,
2
Ten komunikat o błędzie wydaje się wskazywać, że libproj nie jest ładowany. Chociaż pakiety powinny już to zrobić, uruchomiłeś sudo ldconfig? Ponadto, czy wyjście ldd ogrinfo(być może trzeba podać pełną ścieżkę dla ogrinfo) pokazuje libproj.so i czy znajduje się w oczekiwanym katalogu (/ usr / lib)?
Zły geniusz

Odpowiedzi:

12

W /gis/158457/gdal2tiles-how-to-make-filenames-of-tiles-to-represent-xyz-coordinates ktoś wspomina, że:

sudo ln -s /usr/lib/libproj.so.0 /usr/lib/libproj.so

Co absolutnie naprawiło ten sam błąd (BŁĄD 6: Nie można załadować biblioteki PROJ.4 (libproj.so)) dla mnie.


W architekturze x86_64 może być konieczne użycie tej odmiany:

sudo ln -s /usr/lib64/libproj.so.0 /usr/lib/libproj.so
Akhorus
źródło
1
To rozwiązało dla mnie, a ja starałem się znaleźć go po nazwie pliku w błędzie, podczas gdy nazywa się to libproj.so.0
ekerner
1
Musiałem podlinkowujemy zarówno libproja gdali z różnych numerów - czyli ln -s /usr/lib/libproj.so.15 /usr/lib/libproj.so; ln -s /usr/lib/libgdal.so.20 /usr/lib/libgdal.sojednak działa na mnie teraz, dzięki za wołu!
anotherdave
8

Po kilku niewłaściwych sposobach, w tym wielokrotnej ponownej instalacji libproj0pakietu, a nawet instalacji QGIS ze źródeł innych niż domyślne Centrum oprogramowania Ubuntu (myślę, że pochodzi z oficjalnego repozytorium QGIS - http://qgis.org/debian trusty main), zrozumiałem, jak zastosować poradę @EvilGenius: ldd ogrinfonie pokazałem libprojnie ważne, ile razy użyłem sudo ldconfig, dopóki nie napisałem:

export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib

Od tego czasu biblioteka jest odczytywana normalnie.

Pavel V.
źródło
7

Próbować:

sudo apt-get install libproj-dev

Rozwiązał ten sam błąd podczas używania gdal_translate do wyodrębniania pasm z obrazu hdf.

Sandino
źródło
0

użyj --with-static-proj podczas kompilowania bibliotek gdal.

kodadict
źródło
1
Przydałoby