Thanks to everyone.  I think I have it fixed now …

The (main) problem I was having was related to scoping changes from Tcl/Tk 
8.6.x to  9.0.x.
Greater care in explicitly referencing some symbols as global (e.g. 
$::tcl_platform as opposed to  $tcl_platform) in my Tcl/Tk code now seems to 
have successfully addressed the issue.

Information from each of  Duncan Murdoch, Ivan Krylov, and Brian Ripley proved 
to be invaluable.
Much appreciated

Wayne

From: Dirk Eddelbuettel <e...@debian.org>
Date: Monday, June 9, 2025 at 8:09 AM
To: Duncan Murdoch <murdoch.dun...@gmail.com>
Cc: Wayne Oldford <rwoldf...@uwaterloo.ca>, R-package-devel@r-project.org 
<R-package-devel@r-project.org>
Subject: Re: [R-pkg-devel] Tcl/Tk version difficulty building loon package on 
Unix ??

On 9 June 2025 at 07:40, Duncan Murdoch wrote:
| I've had some private messages with Wayne; here's some info and a
| question in case someone else wants to follow this up:
|
|   - I can install his new version of loon on Ubuntu without a problem,
| but my R build uses tcl/tk 8.6.

R 'records' its tcl/tk version chosen via 'configure' when building. To
differentiate between 8.6 and 9.0 here Wayne and/or you likely need to
rebuild R. For what it is worth, my sources for the Debian packaging are
still at 8.6 (explicitly selecting it) and hence are the Ubuntu binaries at
CRAN.  Debian does have tcl8.6-dev along with tcl9.0-dev.

|   - I haven't built tcl/tk 9.0.1, and like Wayne, would like to avoid
| that.  Is there a Github action that would install it?

I would recommend a container, and starting from one of the standard 'how to
build R setups'. A possible one is my 'daily R patched' (drp) one at

  https://github.com/rocker-org/drp

which builds weekly. You would just have to change tcl (and presumably tk) to
9.0 in the Dockerfile at

  https://github.com/rocker-org/drp/blob/master/Dockerfile

in line 57 and 64 replacing, respectively, tcl-dev with tcl9.0-dev and tk-dev
with tk9.0-dev.  [ Debian tends to change such common infrastructure packages
in a coordinated wave (called 'transition'), and we have not had one yet for
tcl/tk 9.0. ]

Rebuilding the container (which one can do in an action) will get you
r-patched with the 9.0 versions of tck and tk which should allow some client
testing (in 'loon') to accommodate accordingly (which another action can
call). Of course just doing it locally also works and is easier. While at it,
it would be nice if the package could (just like 'rgl' does) work around a
missing x11 at package install, currently headless setups need to explicitly
wrap this in xvfb.

Hope this helps. Feel free to ping me off-list if the Docker use is unclear
yet is something you want to try.

Best, Dirk

--
dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org

        [[alternative HTML version deleted]]

______________________________________________
R-package-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-package-devel

Reply via email to