2016-07-18 52 views
8

Kiedy próbuję uruchomić następujące polecenie: R --slave --no-save --no-restore -e "print('foo')" katalog Sed nie został znaleziony, gdy uruchomiony R z flagą -e

uzyskać: /usr/local/bin/R: line 193: /usr/local/Library/ENV/4.3/sed: No such file or directory ERROR: option '-e' requires a non-empty argument

Widocznie brew niedawno przeniósł folder ENV do nowej ścieżki (patrz here). Wiem, że mogę łatwo dowiązać dowiązania do nowego diru, aby rozwiązać problem, ale chciałem się dowiedzieć, czy istnieje lepsze rozwiązanie/poprawka (i ewentualnie, jeśli zostanie to naprawione w kodzie źródłowym R).

+0

Czy spróbuj ponownie zainstalować R? Coś zdaje się być pomieszane poza naprawą. –

+0

@KonradRudolph Próbowałem przeinstalować i nie rozwiązało problemu. – petobens

+0

To wydaje się być powtarzalnym problemem - http://stackoverflow.com/q/38441722/1968 - powinien prawdopodobnie zostać zgłoszony jako błąd Homebrew. –

Odpowiedz

10

Dzieje się tak, ponieważ brew zmieniła ścieżki w this commit, więc jeśli uruchomiłeś brew update w ciągu ostatnich 4 dni, właśnie to spowodowało uszkodzenie.

Kredyt trafia pod numer blindjesse za to answer, czyli do brew reinstall -s r.

Wpadłem na kilka innych problemów, gdy próbowałem tego. Nie mam zainstalowane X11 i miałem konflikt z tcl-tk co oznaczało, że to spowodowało jakieś inne błędy podczas kompilacji było tak:

  1. zainstalowałem XQuartz z https://www.xquartz.org
  2. dowiązane do mojego homebrew folderze ln -s /opt/X11/include/X11 /usr/local/include/X11 (zauważ, że homebrew katalog może być inna)
  3. brew install homebrew/dupes/tcl-tk brew link --overwrite --force tcl-tk; brew unlink tcl-tk
  4. brew reinstall -s r

A potem zadziałało to dla mnie. Myślę, że po uaktualnieniu butelki r ten problem powinien zniknąć, ale w tej chwili musiałem to zrobić.

1

Uaktualniono do Sierra, wypróbowano powyższe polecenia, a także wskazówki: tutaj: https://github.com/Homebrew/homebrew-science/issues/4338. Po ponownym zainstalowaniu jądra R, postępując zgodnie z instrukcjami tutaj: https://github.com/IRkernel/IRkernel, wszystko zaczęło działać. Oy vey.

Aby zainstalować jądro R, R uruchomić w terminalu i wprowadzić następujące:

install.packages(c('repr', 'IRdisplay', 'crayon', 'pbdZMQ', 'devtools')) 
devtools::install_github('IRkernel/IRkernel') 
IRkernel::installspec() # to register the kernel in the current R installation