Я собираю программный пакет, который требует заголовочный файл. Файл заголовка отсутствует в моей установке Ubuntu 11.10 (64-разрядная версия). Во время компиляции с использованием make
, gcc
и gfortran
я получаю следующее сообщение об ошибке.
XMstr.c:7:19: fatal error: Xm/Xm.h: No such file or directory
Поиск ответа в ответ заставляет меня поверить, что в моей системе должна быть установлена библиотека MESA, но я не могу найти точное соответствие имени пакета.
Какое может быть название пакета, который мне нужно установить? Имеет ли пакет то же имя в более свежих дистрибутивах Ubuntu?
Вам нужны заголовочные файлы openmotif или lesstif , которые вы можете получить следующим образом:
# lesstif:
sudo apt-get install lesstif2-dev
# openmotif is not available in ubuntu repos
# but you can get it from it's official site:
# http://www.opengroup.org/openmotif/
# but it wants registaration before downloading.
Пакет для решения вашей конкретной проблемы можно найти в другом ответе. Если вы позже столкнетесь с другими подобными проблемами, попробуйте этот более общий подход:
Для Xm/Xm.h
это выглядит так:
File Packages
/usr/include/Xm/Xm.h lesstif2-dev, libmotif-dev
/usr/lib/TenDRA/lib/include/motif/1_2.api/Xm/Xm.h tendra [not amd64]
Альтернативный подход командной строки для поиска пакета для файла использует apt-file
как может можно увидеть в вопросе Как получить список файлов для пакета, который я еще не установил?
На Ubuntu 18.04.3 я смог получить корректную недостающую библиотеку Xm.h с помощью
sudo apt-get install libmotif-dev