Linux From Scratch [закрыто]


1

В настоящее время я делаю Linux From Scratch. Я скачал несколько пакетов. Разархивирую их с помощью команды tar и сделаю следующее внутри этого извлеченного пакета:

  1. конфигурировать
  2. делать
  3. сделать тест
  4. сделать установку

Еще одна вещь, что такое makefile?

Пожалуйста, объясните мне назначение этих команд, особенно с точки зрения LFS. Заранее спасибо.


Сценарий конфигурации предоставляется autotools, Если вы проверите Google, WikiPedia и т. Д. Для Makefile а также autotools configure script Вы должны получить много ресурсов для изучения о них.
BenjiWiebe

Ответы:


-1

Я (вроде) знаю, что он делает, но я не уверен, что знаю, как объяснить.

В основном с помощью последовательности команд, которую вы упомянули, вы создаете что-то в двоичном исполняемом виде (программу, библиотеку) из исходного кода (то есть кода, написанного на языке программирования) и устанавливаете его в своей операционной системе (перемещая его в соответствующую папку). , настройка файлов конфигурации и т. д.).

Makefile - это текстовый файл, который использует команда make. Это помогает (автоматизирует) задачи. Один make-файл может содержать информацию для выполнения более чем одной задачи или действия. Без make-файла вам пришлось бы выполнять множество сложных ручных шагов, чтобы добиться цели.

"настроить": (объяснение взято из Вот ) Проверяет некоторые подробности о машине, на которой будет установлено программное обеспечение. Этот скрипт проверяет множество зависимостей в вашей системе. Для правильной работы определенного программного обеспечения может потребоваться, чтобы на вашем компьютере уже существовало много вещей. Если в вашей системе отсутствуют какие-либо основные требования, сценарий конфигурирования завершится, и вы не сможете продолжить установку, пока не получите требуемые вещи. В противном случае он создает Makefile для использования на следующем шаге.

«make» без параметров: указывает make для выполнения действия (правила) по умолчанию в make-файле. Обычно он компилирует, связывает и генерирует двоичный файл, который вы пытаетесь создать (т.е. программу или библиотеку). Обычно это включает в себя преобразование исходного кода в объектные файлы (которые обычно имеют .o расширение) и связывание их в окончательный двоичный файл (который в случае программ Linux обычно не имеет расширения или в случае библиотек Linux обычно имеет .so или же .a расширение). Я не уверен насчет шагов, потому что я программист на Java, и мы не часто выполняем эти шаги).

«make test»: выполняет тесты для этого двоичного файла.

«make install»: в основном перемещает бинарный файл в правильную папку.

Это объяснение, конечно, может получить много улучшений, я просто пытаюсь дать вам общее представление о процессе.

Этот короткий учебник может предоставить дополнительную информацию.



@BenjiWiebe Исправлено. Кстати, в случае, если отрицательное голосование было вашим, я думаю, что неполные ответы не заслуживают отрицательного ответа, только неправильные.
Piovezan

Downvoters, пожалуйста, объясните причину downvote.
Piovezan

3

Использование Makefile облегчает жизнь как разработчику, так и конечному пользователю. По сути, это шпаргалка о том, как создать конкретную часть программного обеспечения. Для простого "Привет, мир" g++ hw.cpp -o hello_world может работать. Тем не менее, когда у вас гораздо более сложное программное обеспечение, часто перед созданием компонента B необходимо построить компонент A, а после того, как эти два будут выполнены, можно создать компонент C. Вывод их вручную, а также вставка путей во включенные библиотеки, временные выходные файлы, окончательные пути установки и т. Д. (Обычно определяется, когда configure скрипт запущен) - может привести к ошибке.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.