
Я пробовал Make версии 4.2 и 4.3 на серверах Ubuntu 18.x, RHEL 8.x и SUSE 15.x. Но у меня та же проблема. Я не могу использовать бинарные пакеты (например, команды yum, apt или zypper).
Я пытаюсь выполнить эти команды (но я также заменил 4.3 на 4.2), но это не удается:
curl http://ftp.gnu.org/gnu/make/make-4.3.tar.gz > /tmp/make-4.3.tar.gz
sudo cp /tmp/make-4.3.tar.gz /usr/bin/
sudo cd /usr/bin
sudo tar -zxvf make-4.3.tar.gz
cd make-4.3
sudo ./configure
sudo sh build.sh
sudo ./make install
Я вижу это:
make[3]: Выход из каталога '/usr/bin/make-4.3/lib' make[2]: Выход из каталога '/usr/bin/make-4.3/lib' make[1]: Выход из каталога '/usr/bin/make-4.3/lib' Выполнение установки в po make[1]: Вход в каталог '/usr/bin/make-4.3/po' make[1]:* Нет правила для создания цели «install». Остановка. make[1]: Выход из каталога «/usr/bin/make-4.3/po» make: *[Makefile:1442: install-recursive] Ошибка 1
Что я делаю не так?
решение1
Для сборки пакетов GNU из исходного кода нужно выполнить следующие действия:
./configure --prefix=/usr/local # Or your preferred place
make
make install
Скрипт configure
запрашивает у вашей среды всевозможные релевантные сведения (версия компилятора, удобство использования различных языковых характеристик, различные библиотеки, функции, которые могут иметь разные имена, ...) и создает некоторые файлы заголовков из результата, отражающие требуемую конфигурацию. Он также создает Makefile
. Запуск make
сам по себеволяпотерпит неудачу, пока не запустишь , configure
нет Makefile
, а значит и install
цели.
Почемувам нужна эта конкретная версия make
? Это довольно стабильный пакет,объявлениене показывает никаких революционных изменений.