Dans Ubuntu, j'installe tous les packages R dans le répertoire, /usr/lib/R/site-library
En spécifiant l'option lib
dans install.packages()
.
Mais lorsque j'essaie d'installer la version de développement des packages R à l'aide de install_github()
, il s'installe toujours dans un référentiel local de l'utilisateur système.
.libPaths()
possède 4 répertoires, dont le référentiel local. Donc, j'ai 2 questions,
S'installe-t-il dans l'un des 3 autres référentiels si je supprime le référentiel local de .libPaths()
?
Existe-t-il un moyen de spécifier le chemin de la bibliothèque d'installation dans install_github()
?
J'utilise Ubuntu 12.04 64bit
Et R 3.0.1
----------------------METTRE À JOUR--------------------------- -----
Impossible de supprimer le référentiel local de .libPaths()
Si j'essaie d'installer en utilisant install_github()
dans RStudio, il s'installe dans le local repository
Puisque lib
n'est pas spécifié.
Si j'essaie d'installer en utilisant install_github()
comme tilisateur non root, il s'installe dans le local repository
Puisque lib
n'est pas spécifié.
Si j'essaie d'installer en utilisant install_github()
comme tilisateur root, il s'installe dans le /usr/local/lib/R/site-library
Puisque lib
n'est pas spécifié.
Y en a-t-il pour spécifier installation lib
?
Pour ajouter des chemins de bibliothèque spécifiés dans devtools
, nous devons utiliser with_libpaths()
Les arguments pour with_libpaths()
sont, with_libpaths(new, code)
Voici un exemple d'utilisation de with_libpaths()
,
library(devtools)
with_libpaths(new = "/usr/lib/R/site-library/", install_github('rCharts', 'ramnathv'))
Courtoisie: Hadley, ici :)
Et à part with_libpaths()
, il y a plus d'options pour dans devtools::with_something()
in_dir: working directory
with_collate: collation order
with_envvar: environmental variables
with_libpaths: library paths, replacing current libpaths
with_lib: library paths, prepending to current libpaths
with_locale: any locale setting
with_options: options
with_path: PATH environment variable
with_par: graphics parameters
Plus d'explications ici
install_github
prend un ...
argument qui passe à devtools::install
. devtools::install
a un argument args
.
args
Un vecteur de caractères facultatif d'arguments de ligne de commande supplémentaires à passer à l'installation de R CMD. Cette valeur par défaut est la valeur de l'option "devtools.install.args".
R CMD install
prend un argument de bibliothèque
Options:
-h, --help print short help message and exit
-v, --version print INSTALL version info and exit
-c, --clean remove files created during installation
--preclean remove files created during a previous run
-d, --debug turn on debugging messages
and build a debug DLL
-l, --library=LIB install packages to library tree LIB
Donc, ce qui suit devrait fonctionner:
devtools::install_github("repo", args = c('--library="./mypath/gdfgdg/"'))
cependant, il ne semble pas remplacer l'appel à R CMD install
"C:/PROGRA~1/R/R-31~1.0/bin/x64/R" --Vanilla CMD INSTALL \
"C:\Users\john\AppData\Local\Temp\RtmpucrXMD/RSelenium_1.3.2.tar.gz" \
--library="C:/Users/john/Documents/R/win-library/3.1" --install-tests \
--library="C:/Users/john/Desktop/"
Il s'agit plus d'une solution de contournement, mais j'ai trouvé un moyen d'utiliser la version en ligne de commande de R.
À partir d'Ubuntu:
Sudo -i R
l'astuce (j'ai trouvé) est d'utiliser l'option -i
Puis à partir de R:
.libPaths()
mon répertoire R local n'apparaît pas; le répertoire par défaut est celui que je veux.
Ensuite, je install.packages()
ou install_github()
en toute impunité.
J'espère que cela t'aides,
Ian