Что делали или использовали пользователи до появления команды Make?

Что делали или использовали пользователи до появления команды Make?

Я использую Gentoo в качестве основной домашней ОС для рабочего стола. С ~2004 года. Я ценю emergeкоманду для управления исходной ОС, как и она. Время от времени я проверяю другие дистрибутивы, но мне особенно нравитсяLinux From Scratch — для тех, кто не знает. Конечно, я никогда не проходил всю книгу, потому что использование Gentoo избаловало меня в этом отношении. Я считаю Gentoo LFS + менеджером пакетов. Я наконец решил, что собираюсь закончить книгу, поэтому я установил XUbuntu на виртуальную машину, чтобы имитировать новизну и ...


Я слежу за релиз-кандидатомВерсия 3 - Системный CLFS, и меня осенилоГлава 6 - Временная система - Создание. Если пользователю необходимо makeскомпилировать версию Make,Проблема причинности курицы и яйцапоявляется Это подводит меня к следующим логическим вопросам.

  1. КогдаСтюарт Фельдмансозданный makeв 1976 году, как компьютерная общественность скомпилировала его программу, если их ОС не содержала зависимостей ОС make? Должен ли я предположить, что статья Википедии ниже верна для каждой ОС?

  2. Нужно ли ему было упаковывать make, чтобы включить в него все версии make, зависящие от ОС, для завершения 1?(См. ниже)

  3. Если мне нужна программа A, но она доступна для компиляции только в ОС A, нужно ли мне покупать ОС A, даже если я использую ОС B? (По возможности игнорируйте Windows.)

Обновлять

  1. На основании комментария jimmij,Существовали ли компиляторы, специфичные для ОС, подобно тому, как make зависел от ОС?

Википедияговорит:

До появления Make система сборки Unix чаще всего состояла из зависящих от операционной системы скриптов оболочки "make" и "install", сопровождающих исходный код программы. Возможность объединять команды для различных целей в один файл и возможность абстрагироваться от отслеживания зависимостей и обработки архивов была важным шагом в направлении современных сред сборки.

Также, обратите внимание, что я ищу здесь некоторую историческую перспективу, поскольку я родился в 1976 году.

решение1

Make просто для удобства. Вы можете создавать ПО и без него, просто это сложнее.

Когда вы запускаете makeчто-то, чтобы построить, он показывает вам команды, которые он запускает. Вы можете запустить эти команды вручную и получить тот же эффект.

$ echo "int main() {}" > test.c
$ make test
cc     test.c   -o test

Что создало файл с именем test.
Я могу получить тот же результат, просто выполнив:

cc test.c -o test

 

Если бы make не существовал, вы могли бы либо попросить пользователей запустить эту ccкоманду вручную, либо распространить скрипт оболочки и попросить их запустить этот скрипт.

Связанный контент