Сборка пакетов-расширений для языка R — различия между версиями
D uragan (обсуждение | вклад) |
D uragan (обсуждение | вклад) (Now we use 2019.1 branch) |
||
Строка 19: | Строка 19: | ||
Но обычно пакет сразу не собирается, и приходится либо дорабатывать spec-файл, либо сначала собирать дополнительные пакеты (необходимые для сборки данного). Поэтому заранее сложно сказать, сколько в итоге пакетов придется обработать. | Но обычно пакет сразу не собирается, и приходится либо дорабатывать spec-файл, либо сначала собирать дополнительные пакеты (необходимые для сборки данного). Поэтому заранее сложно сказать, сколько в итоге пакетов придется обработать. | ||
− | Для надежности, следует попробовать собрать пакет уже на ABF - это позволяет выявить ошибки, которые можно пропустить при локальной сборке. Для этого необходимо перейти на страничку вашего проекта, нажать "New Build" и в появившемся окне слева отметить галочками репозитории main и contrib для платформы | + | Для надежности, следует попробовать собрать пакет уже на ABF - это позволяет выявить ошибки, которые можно пропустить при локальной сборке. Для этого необходимо перейти на страничку вашего проекта, нажать "New Build" и в появившемся окне слева отметить галочками репозитории main и contrib для платформы rosa2019.1 (последней на момент написания этой странички, если есть платформа поновее - то надо выбирать ее). |
[[Категория:Практика студентов]] | [[Категория:Практика студентов]] |
Текущая версия на 13:03, 3 июля 2019
R — язык программирования для статистической обработки данных и работы с графикой. Среда, в которой производится обработка, также называется R. Для этой среды существует множество вспомогательных расширений, реализующих дополнительные функции. Каждое такое расширение, не входящее в базовую поставку R, оформляется в РОСЕ как отдельный пакет.
Пакеты создаются полуавтоматически скриптом R2spec, который необходимо запускать в установленной РОСЕ, имеющей доступ в интернет. Для получения скрипта необходимо установить пакет R2spec. Все последующие действия необходимо выполнять в консоли/терминале.
Пакет для расширения foo создается с помощью скрипта следующим образом:
$ R2spec -p foo
Скрипт ищет последнюю версию расширения foo в публичных репозиториях (в частности, в CRAN). В случае успеха архив с исходным кодом скачивается в директорию ~/rpmbuild/SOURCES, а также создается spec-файл ~/rpmbuild/SPECS/R-foo.spec с инструкциями для сборки rpm-пакета из этого кода. Этот файл надо передать утилите rpmbuild, чтобы она попробовала собрать пакет:
$ rpmbuild -bb ~/rpmbuild/SPECS/R-foo.spec
Если соберется сразу — отлично, можно делать src.rpm:
$ rpmbuild -bs ~/rpmbuild/SPECS/R-foo.spec
и затем делать из него проект на ABF в своем репозитории.
Но обычно пакет сразу не собирается, и приходится либо дорабатывать spec-файл, либо сначала собирать дополнительные пакеты (необходимые для сборки данного). Поэтому заранее сложно сказать, сколько в итоге пакетов придется обработать.
Для надежности, следует попробовать собрать пакет уже на ABF - это позволяет выявить ошибки, которые можно пропустить при локальной сборке. Для этого необходимо перейти на страничку вашего проекта, нажать "New Build" и в появившемся окне слева отметить галочками репозитории main и contrib для платформы rosa2019.1 (последней на момент написания этой странички, если есть платформа поновее - то надо выбирать ее).