./ Configure: показать все недостающие пакеты одновременно

1. Используйте openshell.com :

или

2. Выполните поиск на странице руководства вашей оболочки

, выполнив:

    $ man sh #replace sh with another shell if you need to

Вы можете выполнить поиск шаблона в стиле Ctrl-F, нажав / , набрав шаблон поиска и затем нажав Enter.


Сводка:

echo : отображать строку текста

$? : заменяется на статус выхода последней выполненной команды / конвейера

ls : список каталогов содержимое

>> : добавить вывод

2> & 1 : перенаправить stderr (fd = 2) на stdout (fd = 1) (который в этом контексте является «$ File» в режиме добавления)

6
27.07.2018, 11:24
2 ответа

В вашем случае проще всего установить пакет open-vm-tools.

Чтобы ответить на ваш вопрос, не существует надежного -надежного способа вывести список всех отсутствующих пакетов сразу, в основном потому, что это не было разработано, а configureскрипты позволяют их авторам делать что угодно — так что нет никакого способа знать заранее, как продолжать и безопасно ли продолжать. Примером проблемы, с которой вы можете столкнуться, являются тесты, основанные на результатах предыдущих тестов; напр. проверить наличие установленной программы, выдать ошибку, если она не установлена, и использовать ее в последующих тестах, если она установлена. Продолжение, если программа отсутствует, не даст очень полезных результатов.

Однако во многих случаях вы можете получить полезные результаты, настроив configureтак, чтобы он не закрывался при возникновении ошибки. Как правило, это включает замену AC_MSG_ERRORна AC_MSG_WARN, в configure.acи любой библиотеке M4, используемойconfigure.ac:

sed -i 's/AC_MSG_ERROR/AC_MSG_WARN/g' configure.ac m4/*.m4
autoreconf -i
./configure...

и найдите сообщения «ПРЕДУПРЕЖДЕНИЕ :».

Конечно, вы должны восстановить configure.acи библиотеки M4, прежде чем пытаться собрать программное обеспечение «правильно».

Если посмотреть на это в более общем плане, то есть и другие способы определения зависимостей. Во многих случаях они перечислены в документации (README, INSTALL... ), иногда даже с соответствующими именами пакетов для популярных дистрибутивов. Другим полезным местом для просмотра является сам configure, либо запустив ./configure --help, либо прочитав configure.ac(, или CMakeLists.txt, или meson.build, или любой другой файл, подходящий для используемого инструмента сборки ).Если программное обеспечение, на которое вы смотрите, упаковано в дистрибутив Linux, вы также можете просмотреть метаданные там, хотя они будут соответствовать только версии упакованного программного обеспечения и будут отражать выбор пакетов сопровождающего(apt showsrc...в Debian. производные ).

9
27.01.2020, 20:23

Этот ответ предназначен для того, чтобы показать быстрый способ установки отсутствующих зависимостей в Debian и Ubuntu (, который, если я правильно понял, является тем, чего вы на самом деле хотите достичь ), но не отвечает на ваш вопрос о создании ./configureсообщает обо всех зависимостях сразу.


Если программное обеспечение, которое вы хотите собрать, уже находится в репозиториях (, как в случае с open-vm-toolsв Ubuntu, например ), вы можете сделать:

$ apt-get build-dep <packagename>

При этом будут установлены все зависимости, необходимые для сборки конкретной версии пакета. Это, по общему признанию, не то же самое, поскольку список зависимостей может несколько различаться между двумя версиями, но он должен установить большинство (или все )отсутствующих зависимостей.

5
27.01.2020, 20:23

Теги

Похожие вопросы