Tcl.h: нет такого файла или каталога

7

Я пытаюсь перенести некоторый код из окна 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?

Теги:
tcl

2 ответа

6
Лучший ответ

Похоже, что у вас нет файлов разработки для tcl (библиотеки обычно упакованы отдельно от заголовков). Попробуйте:

$ rpm -qa | grep tcl

Если это не так, найдите пакет -devel для установки. Если это так, это может быть в каталоге, который компилятор не включает. Если он установлен, вы должны найти файл с rpm (я думаю, что опция -ql <packagename>)

  • 0
    Ага. Это действительно так. Спасибо.
9

Вам нужно установить пакет разработки, чтобы получить файлы заголовков. В зависимости от вашего дистрибутива Linux найдите пакеты с именем tcl8.4-dev и tk8.4-dev.

  • 3
    Вы можете установить apt-file, а затем выполнить apt-file search '*/tcl.h' чтобы увидеть, какой пакет включает этот файл.
  • 1
    Вот и все. Печаль во благо. Вы думаете, что у вас есть все, что вам нужно, и через несколько недель вам все еще не хватает важных предметов, lol Спасибо.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню