LinuxForum.Fans
Тема

Установка R Commander (на примере openSUSE)

Автор: valentin 5 сообщений 6699 просмотров
#10038

Возникла надобность установить R и R_Commander к нему.

Википедия написал:

R Commander — графический интерфейс для языка программирования R.
...представляет свободную альтернативу коммерческому пакету SPSS.

Установить, в точности следуя существующим инструкциям, не получилось; немного дополню, напишу как я ставил.


На сайте программы есть инструкция по установке, из которой можно узнать, что устанавливать нужно из коммандной строки самого R (вызванного от имени суперпользователя: sudo R) коммандой:
install.packages("Rcmdr", dependencies=TRUE)
Установка происходит путём компиляции из исходников (в автоматическом режиме), если не установлены dev-пакеты, компилятор будет ругаться и довольно ясно даст понять, что хорошо бы установить их.

На скриншоте пакеты, которые я ставил:


Эти пакеты я устанавливал с помощью http://software.opensuse.org/search
При очередной попытке установить терминал сообщил:

Терминал R написал:
make: gfortran: Команда не найдена

Поиск по слову gfortran выдал следующее:

Терминал написал:
~> cnf gfortran

Программу 'gfortran' можно найти в следующих пакетах:
* gcc-fortran [ путь: /usr/bin/gfortran, репозиторий: zypp (openSUSE 11.2-0) ]
* gcc-fortran [ путь: /usr/bin/gfortran, репозиторий: zypp (repo-oss) ]

Try installing with:
sudo zypper install gcc-fortran

Установил.
[console]~> sudo zypper install gcc-fortran[/console]

Следующее и, в общем-то, последнее, в чём была запинка, это сообщение в конце установки:

Терминал R написал:
Предупреждение
In install.packages("Rcmdr", dependencies = TRUE) :
установка пакета 'RODBC' имеет ненулевой статус выхода

Установил пакеты unixODBC и unixODBC-devel
[console]~> sudo zypper in unixODBC unixODBC-devel[/console]
Далее, повторил комманду установки R Commander, немного насторожило сообщение (орфография сохранена):

Commander GUI можно вызвать только из итнерактивной сессии

При попытке запуска из той же сессии (комманда library(Rcmdr)):

Терминал R написал:

> library(Rcmdr)
Error : .onAttach failed in attachNamespace() for 'Rcmdr', details:
call: structure(.External("dotTclObjv", objv, PACKAGE = "tcltk"), class = "tclObj")
error: [tcl] invalid command name "font".

Ошибка: не удалась загрузка пакета/пространства имен для 'Rcmdr'

Графическая оболочка запускается из консоли самого R, вызванного от имени обычного пользователя (комманда R в терминале, с учётом регистра(!)), сначала:

text

~> R
R version 2.11.0 Under development (unstable) (2010-03-06 r51213)
Copyright (C) 2010 The R Foundation for Statistical Computing
ISBN 3-900051-07-0

R -- это свободное ПО, и оно поставляется безо всяких гарантий. Вы вольны распространять его при соблюдении некоторых условий. Введите 'license()' для получения более подробной информации.

R -- это проект, в котором сотрудничает множество разработчиков. Введите 'contributors()' для получения дополнительной информации и 'citation()' для ознакомления с правилами упоминания R и его пакетов в публикациях.

Введите 'demo()' для запуска демонстрационных программ, 'help()' -- для получения справки, 'help.start()' -- для доступа к справке через браузер. Введите 'q()', чтобы выйти из R.

>

Появится консоль R (в самом терминале).
Затем, в этой консоли (комманда library(Rcmdr)):

Терминал R написал:

> library(Rcmdr)
Загрузка требуемого пакета: tcltk
Загружаю интерфейс Tcl/Tk... готово
Загрузка требуемого пакета: car
>

В итоге, получаем, что хотели:


Примечания:
Возможно, не все пакеты, которые я ставил, нужны.
В процессе установки я переустаналивал пакеты R-*
Возможно, надо устанавливать пакет, содержащий в названии "abind"
---------------------------------------------------------------------------------------------


Не знаю, нужно-не_нужно; может, у меня одного установка проходила таким образом, но решил описать как я ставил, авось кому пригодится.
Вроде бы, ничего не пропустил.
---------------------------------------------------------------------------------------------

Вопрос: можно ли как-нибудь запустить этот ГУИ с ярлыка?

#10159

можно конечно, создать соответствующий ярлык :) обычно он идет с суффиксом .desktop
открой любой ярлык который у тебя на рабочем столе в текстовом редакторе, а дальше сам поймешь :)

#10167
Anatol написал:
а дальше сам поймешь :)

Разве так получится?
В том-то и дело, что это всё дело запускается двумя коммандами, притом первая -- просто в терминале, а вторая -- уже в той консоли которая была вызвана первой коммандой.
Обычный ярлык для запуска-то содать не проблема, а как быть с этим?


Кстати, я там когда редактировал в конце, не исправил про запуск ГУИ. Теперь поправил.

#10487

тогда видимо никак

#29614

Это ещё не всё...
Решил, проверить: поставить R Commander на свежеустановленную openSUSE той же версии.

Оказалось, не хватает make.
Поставил.
[console]sudo zypper in make[/console]
Скомпилировалось.
...вроде бы.

Запускаю.
>library(Rcmdr)

Получаю уведомление:


Даю отмашку на установку. Установка пошла, но при следующем запуске снова возникло это уведомление.
Решил поставить руками из консоли R.

Далее буду писать ошибку и что понадобилось для решения. Комманды данные из консоли будут в рамке с черным полем, те, которые даны из консоли R, а также вывод этой консоли -- в рамке со светлым полем.
Итак, начал с rgl, после "----" новая попытка установки конкретного пакета после успешного устранения предфдущей ошибки.


>install.packages("rgl", dependencies=TRUE)


checking for X... no
configure: error: X11 not found but required, configure aborted.

[console]
sudo zypper in xorg-x11-devel
[/console]
----


configure: error: missing required header GL/glu.h
ERROR: configuration failed for package 'rgl'

[console]
sudo zypper in mesa-devel
[/console]
----


make: g++: Команда не найдена

Поискал g++
[console]
cnf g++
[/console]
[console]
sudo zypper install gcc-c++
[/console]
----


pngpixmap.h:3:17: error: png.h: Нет такого файла или каталога

[console]
sudo zypper in libpng-devel
[/console]

С пакетм rgl на этом всё.
Теперь multcomp


>install.packages("multcomp", dependencies=TRUE)


Error: package 'survival' 2.34-1 was found, but >= 2.35.7 is required by 'multcomp'


> install.packages("survival", dependencies=TRUE)

Теперь, вроде бы всё. Запускается без вопросов.

Кто заинтересован, прошу отписаться сюда об установке на предмет того, все ли компоненты установлены теперь.

Войдите или зарегистрируйтесь, чтобы ответить.