Я пытаюсь установить xps в R и установил ROOT из CERN.
во время компиляции я получаю:
TMLMath.cxx:51:19: fatal error: TMath.h: No such file or directory #include "TMath.h" ^ compilation terminated. make: *** [TMLMath.o] Error 1 ERROR: compilation failed for package ‘xps
Я попытался добавить этот файл вручную, затем потребовался другой, затем еще один... до тех пор, пока ошибка не была просто отсутствующими файлами, а переопределенными (см. Примечания здесь), и снова компиляция завершилась неудачно.
Моя информация о ROOT:
Version 5.34/14 16 December 2013 ROOT 5.34/14 (heads/v5-34-00-patches@v5-34-13-131-gd110ad3, Jan 07 2014, 00:12:00 on linuxx8664gcc) CINT/ROOT C/C++ Interpreter version 5.18.00, July 2, 2010
whereis root root: /usr/bin/root /usr/bin/root.exe /etc/root /usr/bin/X11/root /usr/bin/X11/root.exe /usr/include/root /usr/share/root /usr/share/man/man1/root.1.gz
Я попытался make uninstall
удаленную версию root
версии, и, возможно, с беспокойством ничего не сделал (я удалил папку, из которой я изначально make
d)
Я предполагаю, что, возможно, версия ROOT у меня отсутствует, потому что xps
полагается на более старую версию ROOT? В руководстве показывается очень недавняя дата, поэтому не нравится это пренебрежение программным обеспечением (если я правильно понимаю)...
ROOT установлен отлично, и все необходимые условия, которые я смог найти, были установлены:
sudo apt-get install build-essential dpkg-dev make g++ gcc binutils libx11-dev libxpm-dev libxft-dev libxext-dev gfortran libssl-dev libpcre3-dev libglu1-mesa-dev libglew-dev libftgl-dev libmysqlclient-dev libfftw3-dev libcfitsio3-dev graphviz-dev libavahi-compat-libdnssd-dev libldap2-dev python-dev libxml2-dev libkrb5-dev libgsl0-dev libqt4-dev xfs xfstt t1-xfree86-nonfree ttf-xfree86-nonfree ttf-xfree86-nonfree-syriac xfonts-75dpi xfonts-100dpi
Любая помощь будет оценена, пожалуйста, сообщите мне, если я должен предоставить более подробную информацию о моей системе.
Полный выход от установки Bioconductor:
> biocLite('xps') BioC_mirror: http://bioconductor.org Using Bioconductor version 3.0 (BiocInstaller 1.16.1), R version 3.1.2. Installing package(s) 'xps' trying URL 'http://bioconductor.org/packages/3.0/bioc/src/contrib/xps_1.26.0.tar.gz' Content type 'application/x-gzip' length 6669399 bytes (6.4 Mb) opened URL ================================================== downloaded 6.4 Mb * installing *source* package ‘xps ... checking for gcc... gcc -std=gnu99 checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc -std=gnu99 accepts -g... yes checking for gcc -std=gnu99 option to accept ANSI C... none needed checking how to run the C preprocessor... gcc -std=gnu99 -E checking for gcc... (cached) gcc -std=gnu99 checking whether we are using the GNU C compiler... (cached) yes checking whether gcc -std=gnu99 accepts -g... (cached) yes checking for gcc -std=gnu99 option to accept ANSI C... (cached) none needed found ROOT version 5.34/14 in directory /usr ** libs ** arch - g++ -I/usr//include -O2 -Wall -fPIC -pthread -m64 -I/usr/include/root -c TMLMath.cxx TMLMath.cxx:51:19: fatal error: TMath.h: No such file or directory #include "TMath.h" ^ compilation terminated. make: *** [TMLMath.o] Error 1 ERROR: compilation failed for package ‘xps * removing ‘/home/louis/R/x86_64-pc-linux-gnu-library/3.1/xps The downloaded source packages are in ‘/tmp/RtmpZVOlbW/downloaded_packages Warning message: In install.packages(pkgs = pkgs, lib = lib, repos = repos, ...) : installation of package ‘xps had non-zero exit status
Изменить: я следовал за изменениями ROOTSYS перед запуском R:
export ROOTSYS=/usr/ export "PATH=$ROOTSYS/bin:$PATH"
Я изначально использовал ROOTSYS=/usr/include/root
, где я нашел программу с whereis root
. Однако это дает другую ошибку - /usr/bin/root/include not a directory
. Следовательно, используя ROOTSYS=/usr
...
> source("http://bioconductor.org/biocLite.R") Bioconductor version 3.0 (BiocInstaller 1.16.1), ?biocLite for help > biocLite('xps') BioC_mirror: http://bioconductor.org Using Bioconductor version 3.0 (BiocInstaller 1.16.1), R version 3.1.2. Installing package(s) 'xps' trying URL 'http://bioconductor.org/packages/3.0/bioc/src/contrib/xps_1.26.0.tar.gz' Content type 'application/x-gzip' length 6669399 bytes (6.4 Mb) opened URL ================================================== downloaded 6.4 Mb * installing *source* package ‘xps ... checking for gcc... gcc -std=gnu99 checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc -std=gnu99 accepts -g... yes checking for gcc -std=gnu99 option to accept ANSI C... none needed checking how to run the C preprocessor... gcc -std=gnu99 -E checking for gcc... (cached) gcc -std=gnu99 checking whether we are using the GNU C compiler... (cached) yes checking whether gcc -std=gnu99 accepts -g... (cached) yes checking for gcc -std=gnu99 option to accept ANSI C... (cached) none needed found ROOT version 5.34/14 in directory /usr ** libs ** arch - g++ -I/usr/bin/root/include -O2 -Wall -fPIC -pthread -m64 -I/usr/include/root -c TMLMath.cxx cc1plus: error: /usr/bin/root/include: Not a directory make: *** [TMLMath.o] Error 1 ERROR: compilation failed for package ‘xps * removing ‘/home/louis/R/x86_64-pc-linux-gnu-library/3.1/xps The downloaded source packages are in ‘/tmp/Rtmpc9EO9W/downloaded_packages Warning messages: 1: In install.packages(pkgs = pkgs, lib = lib, repos = repos, ...) : installation of package ‘xps had non-zero exit status 2: installed directory not writable, cannot update packages 'maptools'
Как было отмечено в комментариях выше, ROOT не был установлен правильно - я только что связался с кем - то с той же проблемой, думая, что это было нераскрытым (я оставил заметки на решение здесь, а не по этому вопросу). Я знаю, что политика SO заключается в том, чтобы включить исправление, а не ссылку, поэтому я вставляю его ниже следующего разделителя разделов. Полагаю, что совет, который следует использовать v5.34.24, а не производство, должен по-прежнему применяться (возможно, он будет указан где-то, или кто-то может связаться с сопровождающим снова). [Я вынул раздел об исправлении вручную, который не работал]
(Блог Via Elena Graverini)
Предпосылки:
sudo apt-get install build-essential git subversion dpkg-dev make g++ gcc binutils libx11-dev libxpm-dev libxft-dev libxext-dev
Дополнительные (рекомендуемые) предпосылки:
sudo apt-get install gfortran libssl-dev libpcre3-dev libglu1-mesa-dev libglew-dev libftgl-dev libmysqlclient-dev libfftw3-dev libcfitsio3-dev graphviz-dev libavahi-compat-libdnssd-dev libldap2-dev python-dev libxml2-dev libkrb5-dev libgsl0-dev libqt4-dev
Установите шрифт-сервер и шрифты для ROOT:
sudo apt-get install xfs xfstt sudo apt-get install t1-xfree86-nonfree ttf-xfree86-nonfree ttf-xfree86-nonfree-syriac xfonts-75dpi xfonts-100dpi
xps
рекомендует 5.34.24 на 4 февраля 2015 г.source.tar.gz
файл на ftp://root.cern.ch/root/root_v5.34.24.source.tar.gz/usr/
(совет разработчиков xps
по электронной почте), поскольку многие доступные руководства предлагаютgzip -dc root_v5.34.24.source.tar.gz | tar -xf - mv root ~ cd ~/root ./configure --all make -j N
где N - количество ядер процессора на вашем компьютере (cat/proc/cpuinfo | grep 'cpu cores'
)
sudo mkdir/usr/include/freetype && sudo cp/usr/include/freetype2/freetype.h/usr/include/freetype/freetype.h
ld
в make
sudo apt-get purge root-system root-system-bin root-system-common
export ROOTSYS=/home/louis/root
Rerunning сделать с конфигурацией как ./configure --prefix=/home/louis/
works
ROOTSYS
перед make
(я использовал несколько руководств и забыл установить его, но он работал независимо)make install
является " NOOP "... но он не установлен, если вы не запустили это после make
, так что сделайте это в любом случае Последний шаг - добавить $ ROOTSYS/bin в PATH - добавить source ~/bin/thisroot.sh
к вашему ~/.bashrc
(если ваш.bashrc уже получен в новых терминалах)
ROOTSYS
теперь установлен в оболочках. Xps README предлагает вам установить его, но PATH нет, поэтому я добавил следующее к моему.bashrc:export PATH=$ROOTSYS/bin:$PATH export LD_LIBRARY_PATH=$ROOTSYS/lib:$LD_LIBRARY_PATH
ROOT
теперь должен быть работоспособным и способен компилировать xps
...
cd $ROOTSYS/tutorials' root root [0] .x demos.C
Если ошибок не обнаружено, ROOT работает.
xps
Я ожидал бы, что biocLite ("xps") потерпит неудачу, поскольку двоичный файл был создан с помощью ROOT v.5.34.05... но v5.34.24 был рекомендован разработчиком, так что попытайтесь его в любом случае:
source("http://bioconductor.org/biocLite.R") biocLite("xps")
и это работает :-)
R CMD INSTALL xps_1.26.0.tar.gz
ROOTSYS
ли вы этим инструкциям , в частности, переменной оболочкиROOTSYS
?ROOTSYS
в/usr/
... Я не думаю, что Я установил их перед установкой самого ROOT (который, кажется, работает)