Отсутствуют файлы tk.h и tcl.h при сборке VRip

Я пытаюсь скомпилировать VRip в Ubuntu 10.04, используя сайт http://graphics.stanford.edu/software/vrip/guide/ в качестве руководства. Это зависит от установки Tcl и Tk — я получил последние версии их от менеджера пакетов synaptic.

Когда я пишу «сделать зависимым», я получаю сообщение об ошибке:

В файле, включенном из vripInit.cc:30: vripInit.h:22:17: ошибка: tcl.h: Нет такого файла или каталога vripMain.cc:22:16: ошибка: tk.h: Нет такого файла или каталога В файле включено из vripMain.cc:28: vripInit.h:22:17: ошибка: tcl.h: нет такого файла или каталога В файле включено из vripMiscCmds.cc:29: vripMiscCmds.h:22:17: ошибка: tcl.h : Нет такого файла или каталога В файле, включенном из vripFillCmds.cc:29: vripFillCmds.h:22:17: error: tcl.h: Нет такого файла или каталога В файле, включенном из vripFileCmds.cc:29: vripFileCmds.h:22 :17: ошибка: tcl.h: Нет такого файла или каталога В файле, включенном из vripGridCmds.cc:29: vripGridCmds.h:22:17: ошибка: tcl.h: Нет такого файла или каталога В файле, включенном из vripRangeCmds.cc :36: vripRangeCmds.h:21:17: ошибка: tcl.h: Нет такого файла или каталога В файле, включенном из vripGUICmds.cc:37: vripGUICmds.h:22:17: ошибка: tcl.h: Нет такого файла или каталог vripGUICmds.cc:43:16: ошибка: tk.h: нет такого файла или каталога В файле, включенном из vripPlyCmds.cc: 32: vripPlyCmds.h:22:17: ошибка: tcl.h: нет такого файла или каталога rm makedep.bak

Вроде ищет заголовочные файлы и не находит. Но я не уверен, где сказать, чтобы посмотреть. Может ли кто-нибудь с большим опытом помочь? Я потратил пару часов, пытаясь понять это, но безуспешно... :S

Спасибо, LPlates


person 3lbom    schedule 10.03.2012    source источник


Ответы (1)


Установите пакет tcl-dev с помощью apt или synaptic; tcl содержит среду выполнения, а tcl-devel содержит файлы заголовков и разработки. Сделайте то же самое с tk-dev

person guido    schedule 10.03.2012
comment
Привет, Гвидо, спасибо за помощь. Я должен был упомянуть, что я уже установил пакеты разработки для tcl и tk, используя synaptic, но это все еще не работает... есть ли что-то еще, что я забыл сделать? - person 3lbom; 10.03.2012
comment
Вы установили переменные среды, как сказано несколькими строками ниже в руководстве, которое вы указали в своем вопросе? VRIP_TCL_LIBRARY и VRIP_TK_LIBRARY? и, поскольку вы, вероятно, используете bash, а не csh, вам нужно установить экспорт, а не setenv - person guido; 10.03.2012
comment
да, я сделал это и изменил каталоги, на которые они указывали, на /vrippack-0.31/lib/linux/tk8.4 и VRip/vrippack-0.31/lib/linux/tcl8.4 -- т.е. lib/linux, а не linux /lib как задокументировано (я предполагаю, что это была ошибка в документации) - person 3lbom; 10.03.2012
comment
Вы также установили tcl8.4-dev и tk8.4-dev? в tcl-dev нет tcl.h (я думаю, потому что они хотят поддерживать несколько версий tcl/tk) - person guido; 10.03.2012
comment
Хорошо, проблема в том, что заголовок tcl.h установлен в /usr/include/tcl8.4, в то время как vrip ожидает, что он будет только в /usr/include. (на федоре компилируется без лишних лагов.. :) ). Мне жаль, что вам приходится редактировать файлы сборки, чтобы собрать vrip самостоятельно. Перейдите в подкаталог src, затем отредактируйте файл compile-flags . Найдите строку INCL= -I. .... и добавьте -I/usr/include/tcl8.4 -I/usr/include/tk8.4 Затем в строке LIBPATHS= добавьте -L/usr/lib/yourtcllibrariespath (то же самое для tk). Остерегайтесь, вам нужно отредактировать строки в ветке else (строки 63-65) - person guido; 11.03.2012
comment
Потрясающие! большое спасибо - исправлено и компилируется. очень ценю ваши усилия! надеюсь, теперь я смогу сделать что-то полезное с этой библиотекой :) - person 3lbom; 11.03.2012
comment
@LPlates Это то, что обрабатывается, когда пакет адаптируется для дистрибутива. Сборка из первоисточника означает отказ от подобных вещей; вам придется иметь дело с (некоторыми) процессами адаптации самостоятельно. (Другие части, например упаковку, вы можете пропустить.) - person Donal Fellows; 11.03.2012