Fnzh Xx
Fnzh Xx

Reputation: 681

How to install tcltk in R?

My system is: debian6 + r-2.15.

I have installed tcl-devel and tk-devel with apt-get:

apt-get install tcl8.5-dev tk8.5-dev

But I'm getting the following error

> library("tcltk") 
Error : .onLoad failed in loadNamespace() for 'tcltk', details:
call: fun(libname, pkgname)
error: Tcl/Tk support is not available on this system
In addition: Warning message:
S3 methods ‘$.tclvar’, ‘$<-.tclvar’, ‘as.character.tclObj’, ‘as.character.tclVar’,  
‘as.double.tclObj’, ‘as.integer.tclObj’, ‘as.logical.tclObj’, ‘as.raw.tclObj’, 
‘print.tclObj’, ‘[[.tclArray’, ‘[[<-.tclArray’, ‘$.tclArray’, ‘$<-.tclArray’, 
‘names.tclArray’, ‘names<-.tclArray’, ‘length.tclArray’, ‘length<-.tclArray’, 
‘tclObj.tclVar’, ‘tclObj<-.tclVar’, ‘tclvalue.default’, ‘tclvalue.tclObj’,
‘tclvalue.tclVar’, ‘tclvalue<-.default’, ‘tclvalue<-.tclVar’, ‘close.tkProgressBar’ were declared in NAMESPACE but not found 
Error: package/namespace load failed for ‘tcltk’
> install.packages('tcltk')
Warning message:
package ‘tcltk’ is not available (for R version 2.15.1) 

How can I install tcltk in my R?


Edit

> capabilities()["tcltk"]
tcltk 
FALSE 

I compiled R-2.15.1 to install it on debian6.04, but how can I do now in order to run tcltk?

Upvotes: 12

Views: 17216

Answers (2)

showteth
showteth

Reputation: 418

I ran the following code on centos, You need to modify it according to your system.

First, install tcl and tk:

# on centos
sudo yum install tcl-devel tcl
sudo yum install tk-devel tk

Second, compile R with --with-tcltk:

./configure --enable-R-shlib=yes --prefix=`pwd` --with-x=no --with-tcltk

Third, install package.

Upvotes: 2

Dirk is no longer here
Dirk is no longer here

Reputation: 368181

I think you are doing this wrong.

Read the README at http://cran.r-project.org/bin/linux/debian/ to learn how to get the current R version for your Debian version (be it stable or testing). This version already has support for the tcltk package which comes with R, provided R is built the right way. Which is easiest to assure with a proper pre-built version.

You can check that by looking at capabilities():

R> capabilities()["tcltk"]
tcltk 
 TRUE 
R> 

Upvotes: 11

Related Questions