R В install.packages("RGtk2"): фатальная ошибка: файл 'gdk/gdkx.h' не найден
Когда я устанавливаю.packages("RGtk2") в R, я получаю эту проблему:
fatal error: 'gdk/gdkx.h' file not found
#include <gdk/gdkx.h>
^
1 error generated.
make: *** [Rgtk.o] Error 1
ERROR: compilation failed for package ‘RGtk2’
* removing ‘/usr/local/lib/R/3.4/site-library/RGtk2’
* restoring previous ‘/usr/local/lib/R/3.4/site-library/RGtk2’
Я устанавливаю GTK, используя brew в macOS Sierra 10.12.3
2 ответа
Согласно документации INSTALL, вы должны сначала установить библиотеки Gtk:
Во всех случаях (например, Unix или Windows, исходный код или двоичный файл) вам понадобятся соответствующие библиотеки Gtk.
Для Windows вы можете скачать пакет разработчика GTK с http://gladewin32.sourceforge.net/
Для Unix вы можете получить исходные файлы для разных библиотек с ftp://ftp.gtk.org/pub/gtk/v2.8/
GTK широко использует другие библиотеки и конкретные версии этих зависимых библиотек. В результате установка GTK (под Unix) может быть трудоемким и, по-видимому, косвенным процессом, который включает в себя установку многочисленных подбиблиотек.
Я подозреваю, что Gtk HomeBrew может быть неправильно установлен в вашей системе.
Дальнейшие исследования выявляют похожие проблемы, а также предлагают устранение неполадок, чтобы получить Gtk и RGtk2
работать вместе.
Установка RGtk2 теперь может быть намного проще. Сначала установите Homebrew, затем в R:
system('brew install gtk+')
install.packages(
'RGtk2', type = 'mac.binary.el-capitan', repos = 'https://macos.rbind.org'
)
Если вы не предпочитаете использовать репозиторий https://macos.rbind.org/ (который был создан мной) для установки готового бинарного пакета, вы можете просто установить RGtk2 из исходного кода:
system('brew install gtk+')
install.packages('RGtk2', type = 'source')
Если кому-то интересно узнать о технических деталях, в этом коммите в репозитории RGtk2 на Github была исправлена ошибка "файл gdk / gdkx.h не найден".