2017-01-30 25 views
0

Когда я использую свою конфигурацию в ОС ubuntu (16), проблема не возникает. Я установил инструмент autoconf и зависимости.autoconf configure warning:/usr/bin/file: Нет такого файла или каталога

Когда я запускаю тот же файл конфигурации в ubuntu (16 или новее) Проблемы в том, что я не устанавливал никаких аутов. Я получаю следующее сообщение об ошибке.

./configure: line 7022: /usr/bin/file: No such file or directory 

Это безвредно для процесса сборки. Я просто хочу понять, что происходит. Файл конфигурации:

7022  case `/usr/bin/file conftest.o` in 
7023  *32-bit*) 

Похоже, что у моего докера нет/usr/bin/file. Какие пакеты ubuntu содержат служебную программу. Проблема с поиском какой-либо полезной информации о '/ usr/bin/file' заключается в том, что файл является таким распространенным термином, его нелегко найти. На моей системе с помощью утилиты файла, я могу получить следующую информацию от человека страницы файла:

AVAILABILITY 
    You can obtain the original author's latest version by anonymous FTP on ftp.astron.com in the direc‐ 
    tory /pub/file/file-X.YZ.tar.gz. 

Моего вопроса: «Файл» очень простая утилита или недавно добавлен в пакет autotolls? Должен ли я установить его?

+0

Да, 'файл' - очень простая утилита. Пакет, предоставляющий его, просто называется 'file'; см. https://launchpad.net/ubuntu/+source/file - вы должны использовать средства управления пакетами своей операционной системы для установки двоичного пакета, предоставленного поставщиком, и не пытаться установить его из источника. –

+0

Кстати, если вы хотите google о программном пакете, «пакет» является важным ключевым словом для добавления. Googling «пакет файлов ubuntu» поднял вышеуказанное как второе звено, а одно над ним было также актуальным. –

+0

Чарльз спасибо за комментарий, теперь я поняла. Строго-существенное, похоже, не включает его. –

ответ

1

ГНУ Build System restricts the features что configure предполагается использовать для обеспечения максимальной совместимости, в том числе, как писать код оболочки и которые utilities доступны для использования, а также функции, которые вы можете ожидать от этих утилит.

file является не в этом списке, и должны быть tested forAC_PATH_PROG с (или что-то в этом роде), и поэтому на самом деле ошибка в пакете. Даже если тест в configure абсолютно необходим file для работы с получением AC_MSG_ERROR, говорящего «Установить файловую программу», было бы предпочтительнее декодировать сообщение об ошибке.

Так, чтобы ответить на ваши вопросы:

является «Файл» очень простой утилиты или недавно добавлен в пакет autotolls?

Нет, файл не является частью autotools, но это довольно распространенная утилита для установки. Basic может быть не лучшим приложением для описания file.

Должен ли я установить его?

Ваш сценарий configure полагается на него, поэтому, я думаю, вам нужно.

Но это использование глупо: большую часть времени вы можете определить архитектуру от host triplet. Кроме того, objdump является одним из стандартных инструментов компилятора (objdump -f conftest.o отобразит аналогичную информацию). По крайней мере, он будет установлен.

+0

Программа «файл» требуется сгенерированным кодом, и нет никакой необходимости в «файле» configure.ac или Makefile.am. Показывается только зависимость при запуске configure в системе без двоичного файла. –

+0

Правильно, но где-то внутри 'configure.ac' (или один из макросов .m4, который он использует) будет то, что генерирует строки 7022-7023, когда' autoconf' запускается для генерации скрипта 'configure'. – ldav1s

0

Файл, как представляется, имеет свое происхождение в BSD и развивается (файл man). Это редкий вопрос, и я не ожидаю никаких ответов. Я пытаюсь накапливать некоторые данные. После того, как какая-то детективная работы, я обнаружил, что по следующей ссылке:

https://travis-ci.org/file/file GitHub страницы для реализации

команды

Unix файла: http://www.computerhope.com/unix/ufile.htm

вики-страница: https://en.wikipedia.org/wiki/File_(command)

Как полагает Чарльз, вы должны установить пакет файлов через диспетчер пакетов. Для ubuntu ссылка на пакет: https://launchpad.net/ubuntu/+source/file

Не уверен, какой источник является подлинной реализацией. Я не эксперт по ОС, а другие комментируют и обновляют.