Skip to content

Dependency on TCL/Tk breaks Docker/headless mode #189

@larsvilhuber

Description

@larsvilhuber

When installing (here using renv()) summarytools, or later when running, it fails with a dependency on Tcl/Tk. This is a problem for automated/headless execution of R code.

System:

rocker/verse:4.0.2 (also verified with rocker/verse:4.3.2)

Error msg:

Error: .onLoad failed in loadNamespace() for 'tcltk', details:
  call: dyn.load(file, DLLpath = DLLpath, ...)
  error: unable to load shared object '/usr/local/lib/R/library/tcltk/libs/tcltk.so':
  libtcl8.6.so: cannot open shared object file: No such file or directory
Execution halted
ERROR: lazy loading failed for package ‘summarytools’

Solution

Build derivative Docker image adding these libraries in.

Long-term Solution A

Make use of interactive graphical tools optional (on Linux), make it into a warning rather than an error.

Long-term Solution B

Explicitly list Tcl/Tk as a dependency. Note: This is also not listed as a software dependency at PPM.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions