【问题标题】:Docker: Can't locate Tk.pm in @INC (you may need to install the Tk module) on LinuxDocker:在 Linux 上无法在 @INC 中找到 Tk.pm(您可能需要安装 Tk 模块)
【发布时间】:2021-01-04 06:35:13
【问题描述】:

我正在尝试使用 perl:latest 和 activestate/circleci-activeperl:latest 图像在 ubuntu:16.04 容器上运行使用 Tk 模块制作的简单 perl gui。

我收到错误Can't locate Tk.pm in @INC (you may need to install the Tk module)

perl的Linux容器环境安装Tk模块的命令是什么?

我使用cpan安装Tk如下

$ perl -MCPAN -e shell
cpan> install Tk

我收到以下错误

【问题讨论】:

  • 在 docker 上,你没有 X11。查看错误信息
  • 在 Docker 中运行交互式 GUI 映像非常棘手,并且非常依赖于平台(如果您在本机 Linux 主机上,那么您至少有 X)。我建议直接在您的主机上运行它。
  • 从源代码安装 Perl Tk 模块需要 Tk 库和相应的头文件 (.h)。您的包似乎已将库和头文件分成单独的包(一种常见做法),并且您似乎没有安装带有头文件的包。 (您需要安装提供这些的软件包。)但是由于您正在为系统 Perl 安装,因此最好使用系统的软件包管理器来安装模块本身(正如您的回答所建议的那样)

标签: docker perl ubuntu x11


【解决方案1】:
apt-get install perl-tk

帮助安装 perl-tk 模块。

【讨论】:

  • 我已经编辑了命令,因为我认为有一个错误。如果这是真的,请向我道歉并回滚编辑。
  • 带有 RUN 语句的命令是这样添加的,因为它是 Dockerfile 的一部分。如果安装在 dockerfile 之外,那么您的编辑是正确的。
  • 在 Fedora 上:sudo dnf install perl-Tk
猜你喜欢
  • 1970-01-01
  • 2016-06-04
  • 2016-10-02
  • 2014-11-10
  • 1970-01-01
  • 2019-07-27
  • 1970-01-01
  • 2021-12-09
  • 2013-05-19
相关资源
最近更新 更多