8

我正在尝试将一些代码从 Solaris 机器移植到 Linux(特别是 Redhat)机器上。代码编译没有问题,在 Solaris 机器上运行也没有问题。

但是,在 Linux 上重新编译时,我遇到了 tcl.h 的问题 - 编译器告诉我,error: tcl.h: No such file or directory对于多个#include "tcl.h".

据我所知,tcl8.4 & tk8.4 都安装了:

  • /usr/lib/tcl8.4
  • /usr/share/tcl8.4
  • /usr/lib/tk8.4
  • /usr/share/tk8.4

但是,我在任何地方都找不到 tcl.h 。有谁知道它会在哪里?或者它是 Solaris 需要的那些文件之一,但不需要包含 Linux?或者我什至需要安装除 tcl/tk 8.4 之外的东西吗?

4

2 回答 2

10

您需要安装开发包才能获取头文件。根据您的 Linux 发行版,查找名为tcl8.4-dev和的包tk8.4-dev

于 2013-03-12T14:50:34.717 回答
6

听起来您没有安装 tcl 的开发文件(库通常与标头分开打包)。尝试:

$ rpm -qa | grep tcl

如果它不存在,请找到要安装的 -devel 包。如果是,它可能位于编译器不包含的目录中。如果安装了,应该可以用 rpm 找到文件(我认为选项是-ql <packagename>

于 2013-03-12T14:50:50.060 回答