Jak zainstalować rgdal na Ubuntu 12.10?

16

Mam problem z zainstalowaniem rgdalbiblioteki w systemie Ubuntu 12.10.

Instalacja z poziomu R powoduje błąd:

Błąd: nie znaleziono gdal-config Nie można znaleźć skryptu gdal-config rozpowszechnianego z GDAL. Jeśli nie zainstalowałeś bibliotek GDAL, możesz pobrać źródło ze strony http://www.gdal.org/ Jeśli zainstalowałeś biblioteki GDAL, upewnij się, że gdal-config jest na twojej ścieżce. Spróbuj wpisać gdal-config w wierszu poleceń powłoki i sprawdź, czy działa. Jeśli nie, użyj: --configure-args = '- with-gdal-config = / usr / local / bin / gdal-config' z odpowiednimi wartościami dla twojej instalacji.

BŁĄD: konfiguracja nie powiodła się dla pakietu „rgdal” * usunięcie ”/home/rdk/R/x86_64-pc-linux-gnu-library/2.15/rgdal 'Ostrzeżenie w install.packages: instalacja pakietu' rgdal 'miała niezerowe wyjście status

R-sig-Geo , te dwa pytania SE i inne strony wskazały mi wymagania libgdal1-dev.

Ale kiedy próbowałem

sudo apt-get install libgdal1-dev

W końcu pojawia się inny komunikat o błędzie

Nie można zainstalować niektórych pakietów. Może to oznaczać, że zażądałeś niemożliwej sytuacji lub jeśli używasz niestabilnej dystrybucji, że niektóre wymagane pakiety nie zostały jeszcze utworzone lub zostały przeniesione z Przychodzących. Następujące informacje mogą pomóc rozwiązać problem:

Następujące pakiety mają niezaspokojone zależności: libgdal1-dev: Zależy: libgdal-dev, ale nie zostanie zainstalowany E: Nie można rozwiązać problemów, trzymałeś uszkodzone pakiety.

Znowu - kiedy próbuję zainstalować libgdal-devinną zależność, pojawia się błąd

Następujące pakiety mają niezaspokojone zależności: libgdal-dev: Zależy: libgeos-dev, ale nie zostanie zainstalowany Zależy: libspatialite-dev, ale nie zostanie zainstalowany

Znów próba libgeos-devdaje wiadomość:

Depends: libgeos-c1 (= 3.3.3-1.1) but 3.3.3-2~precise2 is to be installed
E: Unable to correct problems, you have held broken packages.

i libspatialite-dev:

Depends: libspatialite3 (= 3.1.0~rc2-1ubuntu1) but
3.1.0~rc2-2~precise1 is to be installed

Czy jest jakiś sposób na oswojenie tych zależności i rgdaluruchomienie ich w Ubuntu?

Mój sessionInfo()

Wersja R 2.15.1 (2012-06-22) Platforma: x86_64-pc-linux-gnu (64-bit)

radek
źródło
1
Na Ubuntu 12.04 instalacja libgdal-dev i libgdal1-dev działała dobrze - być może dlatego, że Quantal (12.10) jest całkiem nowy, a opiekunowie pakietów nie zaktualizowali jeszcze odpowiednich wersji? (Właściwie, dlaczego mówi, że zainstaluje się, 3.3.3-2~precise2kiedy będziesz na kwantach?)
mathematical.coffee
1
@ mathematical.coffee Jest poprawny. Zrobiłem to na QQbeta2 kilka tygodni temu, ale nie pamiętam jak. Spróbuj ustawić repozytorium CRAN w /etc/apt/sources.list na precisezamiast quantal.
Ari B. Friedman
2
Czy zastanawiałeś się, czy możesz dostać r-cran-rgdal za pośrednictwem PPA Michaela?
Dirk Eddelbuettel
mathematical.coffee: Równie dobrze może być trochę za wcześnie. Ari: Zaktualizowałem repozytorium CRAN - dziękuję za podpowiedź. Dirk: Przepraszam za moją ignorancję - czy mówimy o launchpad.net/~marutter/+archive/c2d4u
radek
@radek, biorąc pod uwagę odpowiedź Josha O'Briena poniżej 14.04, warto edytować swoje pytanie, aby uczynić je bardziej ogólnym w przypadku innych wersji Ubuntu. Myślę, że przydałoby się pytanie kanoniczne.
amc

Odpowiedzi:

24

Nowszą odpowiedź można znaleźć tutaj: http://robinlovelace.net/r/2013/11/26/installing-rgdal-on-ubuntu.html .

Zasadniczo trzy następujące wiersze kodu powinny go posortować:

sudo apt-get install aptitude # install aptitude as an alternative to apt-get
sudo aptitude install libgdal-dev # install the package (you may have to respond to queries here)
sudo aptitude install libproj-dev # install the proj.4 projection library

Spędziłem wiele lat na tym problemie, więc mam nadzieję, że ta zaktualizowana odpowiedź przyda się innym. Daj mi znać, jeśli tak!

RobinLovelace
źródło
Miałem problem rgdaljeszcze raz ... i natknąłem się na moje własne pytanie tutaj. Tym razem Twoje rozwiązanie rozwiązało problem.
radek
Jest to użyteczne. Dziękuję bardzo za poświęcenie czasu na zarejestrowanie tych kroków.
Josh O'Brien
1
sudo apt-get install r-cran-rgdal # to polecenie również to robi i automatycznie instaluje zależności
RobinLovelace
13

Spróbuj uruchomić je wszystkie razem i określić wersje, takie jak to:

sudo apt-get install libgdal1-dev libgdal-dev libgeos-c1=3.3.3-1.1 libspatialite3=3.1.0~rc2-1ubuntu1

apt-get nie lubi obniżać pakietów, ale zrobi to, jeśli go określisz.

Rucent88
źródło
Dzięki - to chyba załatwiło sprawę. Czy przyszłe aktualizacje spowodują konflikt z takim rozwiązaniem?
radek
2
Prawdopodobnie mogą powodować problemy z aktualizacją, tak. Aby uniemożliwić aktualizację pakietu, uruchom go dla każdego pakietu:echo packagename hold | sudo dpkg --set-selections
Rucent88,
4

Tutaj w styczniu 2016 r. W systemie Ubuntu 14.04.2 (i wersji 3.2.2) potrzebowałem następujących elementów, aby zainstalować zarówno pakiet rgdal, jak i uzupełniający (i często bardzo przydatny) pakiet gdalUtils :

sudo apt-get update
sudo apt-get -y install libgdal1h
sudo apt-get -y install libgdal1-dev
sudo apt-get install libproj-dev
sudo apt-get install gdal-bin
Rscript 'install.packages(c("rgdal", "gdalUtils"))'

Aktualizacja: Podobnie jak w styczniu 2017 r., Wersja libgdal to 1i, więc druga linia kodu powinna brzmieć:

sudo apt-get -y install libgdal1i
Josh O'Brien
źródło
3

Otwórz terminal, naciskając (Ctrl + alt + T) i wpisz następujące polecenie.

sudo apt-get update

sudo apt-get install -f

(Naprawi to zależności).

sudo apt-get autorove

(usuwanie niepotrzebnych pakietów)

sudo apt-get clean

(Wyczyść pamięć podręczną)

Ketan Patel
źródło
Dzięki. Próbowałem twojego rozwiązania (autorove nic nie wyrzucili) - niestety to nie pomogło.
radek
1
Usuwa wszelkie niepotrzebne pakiety, czasem staje się ważne, aby usunąć je, gdy Twój system je posiada.
Ketan Patel
3

Aby zmusić rgdal do zainstalowania na Ubuntu 12.04, musiałem zainstalować (i wstrzymać) wiele pakietów specyficznych dla wersji. Zasadniczo wypróbowałem każdy pakiet i zainstalowałem wymagane wersje zależności, dopóki nie mogłem wrócić do pierwotnego celu, aby zainstalować libgdal1-dev

sudo apt-get install libspatialite3=3.0.0~beta20110817-3
echo libspatialite3 hold | sudo dpkg --set-selections
sudo apt-get install libspatialite-dev
sudo apt-get install libgeos-c1=3.3.3-1.1~pgdg12.4+1
echo libgeos-c1 hold | sudo dpkg --set-selections
sudo apt-get install libgdal1=1.9.0-3.1~pgdg12.4+1
echo libgdal1 hold | sudo dpkg --set-selections

sudo apt-get install libgdal-dev
sudo apt-get install libgdal1-dev
gdal-config # now works, and can now install rgdal
tomy
źródło