tdhock / data.table-revdeps

0 stars 1 forks source link

install tcltk #5

Closed tdhock closed 10 months ago

tdhock commented 10 months ago

https://github.com/Rdatatable/data.table/issues/5823 discusses release 1.15.0 which caused a revdep check failure for a package that depends on tcltk, which is not installed on monsoon. I sent an email to ask-arc@nau.edu which asked them to create a module for tcltk.

tdhock commented 10 months ago

I would like to build my own R (not use module R, not use conda), and I actually do that under ~/R/R-4.3.2 etc. Using that R I built, capabilities("tcltk") is FALSE. When I use R source code ./configure --help I see

--with-tcltk use Tcl/Tk (if available), or specify its library
dir [yes]
--with-tcl-config=TCL_CONFIG
specify location of tclConfig.sh []
--with-tk-config=TK_CONFIG
specify location of tkConfig.sh []

and when I run configure via params.R I see

checking for tclConfig.sh... no
checking for tclConfig.sh in library (sub)directories... no
checking for tkConfig.sh... no
checking for tkConfig.sh in library (sub)directories... no
checking for tcl.h... yes
checking for tk.h... yes

so it seems the C headers are found, but not the Config shell scripts (tkConfig.sh and tclConfig.sh), so I asked where those can be found.

tdhock commented 10 months ago

this is resolved by telling R configure where to find tcl/tk config.sh https://github.com/tdhock/data.table-revdeps/commit/18feb8619baf662922f150a90346c4b65f094a87

 ./configure --prefix=$HOME --enable-memory-profiling --with-tcl-config=$CONDA_PREFIX/lib/tclConfig.sh --with-tk-config=$CONDA_PREFIX/lib/tkConfig.sh 
tdhock commented 10 months ago

when checking TTAinterfaceTrendAnalysis

* installing *source* package 'tcltk2' ...
** package 'tcltk2' successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
X connection to :99 broken (explicit kill or server shutdown).
ERROR: lazy loading failed for package 'tcltk2'
tdhock commented 10 months ago

tcltk2 works now, not sure why,


* installing *source* package 'tcltk2' ...
** package 'tcltk2' successfully unpacked and MD5 sums checked
** using staged installation
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (tcltk2)