Как git может быть установлен на CENTOS 5.5?
Как я могу установить git на машине CENTOS 5.5?
Я попытался установить его из yum, но получил следующее сообщение.
root@host [~]# sudo yum install git
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* addons: centos.mirrors.tds.net
* base: mirror.ubiquityservers.com
* extras: mirrors.serveraxis.net
* updates: pubmirrors.reflected.net
addons | 951 B 00:00
base | 2.1 kB 00:00
extras | 2.1 kB 00:00
updates | 1.9 kB 00:00
Excluding Packages in global exclude list
Finished
Setting up Install Process
No package git available.
Nothing to do
root@host [~]#
14 ответов:
из исходников? Из РЕПО? Самый простой способ-использовать репозитории:
sudo yum install gitдолжны сделать это. Сначала может потребоваться настроить дополнительное РЕПО, например EPEL во-первых, если git не предоставляется основными репозиториями.если вы хотите установить из исходников, вы можете попробовать эти инструкция. Если у вас есть
yum-utilsустановлено это на самом деле проще, чем это, тоже**:sudo yum build-dep git wget http://kernel.org/pub/software/scm/git/<latest-git-source>.tar.gz tar -xvjf <latest-git>.tar.gz cd <git> make (possibly a ./configure before this) sudo make install**замените части, заключенные в
<>С путей необходимость. Точная процедура может немного отличаться, так как я не скомпилировал git из источника, лично (например, может быть сценарий настройки). Если вы понятия не имеете, о чем я говорю, то вы можете просто установить из РЕПО в соответствии с моим первым предложением.
если вы используете CentOS встроенный
yumрепозитории, похоже, не имеютgitвключенный и как таковой, вам нужно будет добавить дополнительный репозиторий в систему. Для моих серверов я обнаружил, что Webtatic репозиторий, кажется, достаточно актуален и установка дляgitтогда будет следующим образом:# Add the repository rpm -Uvh http://repo.webtatic.com/yum/centos/5/latest.rpm # Install the latest version of git yum install --enablerepo=webtatic git-allобойти
Missing Dependency: perl(Git)ошибки:yum install --enablerepo=webtatic --disableexcludes=main git-all
всего:
sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm sudo yum install git-core
Я пробовал несколько методов из этого вопроса, и все они потерпели неудачу на моем CentOs, либо из-за неправильных репозиториев, либо отсутствующих файлов.
вот метод, который работает для меня (при установке версии 1.7.8):
yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel wget http://git-core.googlecode.com/files/git-1.7.8.tar.gz tar -xzvf ./git-1.7.8.tar.gz cd ./git-1.7.8 ./configure make make installвы можете скачать другую версию отсюда: http://code.google.com/p/git-core/downloads/list
для установки git
- установить последний epel-релиз
rpm-Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
- установить git из репозитория
yum install git
Я уверен, что этот вопрос сейчас умрет, когда RHEL 5 приближается к концу жизни, но ответ, похоже, стал намного проще:
sudo yum install epel-release sudo yum install gitработал для меня на новой установке CentOS 5.11.
yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel gcc wget http://git-core.googlecode.com/files/git-1.7.11.4.tar.gz tar zxvf git-1.7.11.4.tar.gz cd git-1.7.11.4 ./configure make make install
хорошо, есть больше, чем это, вам нужно zlib. zlib является частью CentOS, но вам нужна форма разработки, чтобы получить zlib.ч. .. обратите внимание, что имя yum разработки zlib возможно, это совсем не так, как для apt-get на ubuntu / debian, что на самом деле работает с моей версией CentOS
в частности, вы ./настроить на Git, а затем попробовать сделать, и первое построение завершается с отсутствует библиотека zlib.чЯ использовал двухэтапную процедуру, чтобы решить эту проблему а) получил RPMFORGE для моего версией
Видеть: www.centos.org/modules/newbb/viewtopic.php?topic_id=18506&forum=38 и это: wiki.centos.org/AdditionalResources/Repositories/RPMForge
В моем случае [как root или с помощью sudo]
$ wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.x86_64.rpm $ rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm $ rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm ## Note: the RPM for rpmforge is small (like 12.3K) but don't let that fool ## you; it augments yum the next time you use yum ## [this is the name that YUM found] (still root or sudo) $ yum install zlib-devel.x86_64 ## and finally in the source directory for git (still root or sudo): $ ./configure (this worked before, but I ran it again to be sure) $ make $ make install(эта установки поставить его по умолчанию в
/usr/local/bin/git... не мой любимый выбор, но хорошо для значения по умолчанию)... и ЖКТ работает отлично!
похоже, что РЕПО для CentOS 5 исчезают. Большинство из них, упомянутых в этом вопросе, больше не находятся в Сети, похоже, не имеют Git или имеют действительно старую версию Git. Ниже приведен скрипт, который я использую для создания OpenSSL, IDN2, PCRE, cURL и Git из исходных текстов. Оба
git://иhttps://протоколы будут доступны для клонирования.со временем имена архивов должны будут обновляться. Например, на момент написания этой статьи
openssl-1.0.2k.tar.gz- последняя доступная в Семьи 1.0.2.ответ Дейла Андерсона с использованием RHEL repos выглядит хорошо на данный момент, но его довольно старая версия. Red Hat предоставляет Git версии 1.8, в то время как скрипт ниже строит 2.12 из источников.
#!/usr/bin/env bash # OpenSSL installs into lib64/, while cURL installs into lib/ INSTALL_ROOT=/usr/local INSTALL_LIB32="$INSTALL_ROOT/lib" INSTALL_LIB64="$INSTALL_ROOT/lib64" OPENSSL_TAR=openssl-1.0.2k.tar.gz OPENSSL_DIR=openssl-1.0.2k ZLIB_TAR=zlib-1.2.11.tar.gz ZLIB_DIR=zlib-1.2.11 UNISTR_TAR=libunistring-0.9.7.tar.gz UNISTR_DIR=libunistring-0.9.7 IDN2_TAR=libidn2-0.16.tar.gz IDN2_DIR=libidn2-0.16 PCRE_TAR=pcre2-10.23.tar.gz PCRE_DIR=pcre2-10.23 CURL_TAR=curl-7.53.1.tar.gz CURL_DIR=curl-7.53.1 GIT_TAR=v2.12.2.tar.gz GIT_DIR=git-2.12.2 ############################################################################### # I don't like doing this, but... read -s -p "Please enter password for sudo: " SUDO_PASSWWORD ############################################################################### echo echo "********** zLib **********" wget "http://www.zlib.net/$ZLIB_TAR" -O "$ZLIB_TAR" if [[ "$?" -ne "0" ]]; then echo "Failed to download zLib" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi rm -rf "$ZLIB_DIR" &>/dev/null tar -xzf "$ZLIB_TAR" cd "$ZLIB_DIR" LIBS="-ldl -lpthread" ./configure --enable-shared --libdir="$INSTALL_LIB64" if [[ "$?" -ne "0" ]]; then echo "Failed to configure zLib" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi make -j 4 if [ "$?" -ne "0" ]; then echo "Failed to build zLib" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi echo "$SUDO_PASSWWORD" | sudo -S make install cd .. ############################################################################### echo echo "********** Unistring **********" # https://savannah.gnu.org/bugs/?func=detailitem&item_id=26786 wget "https://ftp.gnu.org/gnu/libunistring/$UNISTR_TAR" --no-check-certificate -O "$UNISTR_TAR" if [[ "$?" -ne "0" ]]; then echo "Failed to download IDN" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi rm -rf "$UNISTR_DIR" &>/dev/null tar -xzf "$UNISTR_TAR" cd "$UNISTR_DIR" LIBS="-ldl -lpthread" ./configure --enable-shared --libdir="$INSTALL_LIB64" if [[ "$?" -ne "0" ]]; then echo "Failed to configure IDN" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi make -j 4 if [ "$?" -ne "0" ]; then echo "Failed to build IDN" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi echo "$SUDO_PASSWWORD" | sudo -S make install cd .. ############################################################################### echo echo "********** IDN **********" # https://savannah.gnu.org/bugs/?func=detailitem&item_id=26786 wget "https://alpha.gnu.org/gnu/libidn/$IDN2_TAR" --no-check-certificate -O "$IDN2_TAR" if [[ "$?" -ne "0" ]]; then echo "Failed to download IDN" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi rm -rf "$IDN2_DIR" &>/dev/null tar -xzf "$IDN2_TAR" cd "$IDN2_DIR" LIBS="-ldl -lpthread" ./configure --enable-shared --libdir="$INSTALL_LIB64" if [[ "$?" -ne "0" ]]; then echo "Failed to configure IDN" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi make -j 4 if [ "$?" -ne "0" ]; then echo "Failed to build IDN" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi echo "$SUDO_PASSWWORD" | sudo -S make install cd .. ############################################################################### echo echo "********** OpenSSL **********" wget "https://www.openssl.org/source/$OPENSSL_TAR" -O "$OPENSSL_TAR" if [[ "$?" -ne "0" ]]; then echo "Failed to download OpenSSL" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi rm -rf "$OPENSSL_DIR" &>/dev/null tar -xzf "$OPENSSL_TAR" cd "$OPENSSL_DIR" # OpenSSL and enable-ec_nistp_64_gcc_12 option IS_X86_64=$(uname -m 2>&1 | egrep -i -c "(amd64|x86_64)") CONFIG=./config CONFIG_FLAGS=(no-ssl2 no-ssl3 no-comp shared "-Wl,-rpath,$INSTALL_LIB64" --prefix="$INSTALL_ROOT" --openssldir="$INSTALL_ROOT") if [[ "$IS_X86_64" -eq "1" ]]; then CONFIG_FLAGS+=("enable-ec_nistp_64_gcc_128") fi "$CONFIG" "${CONFIG_FLAGS[@]}" if [[ "$?" -ne "0" ]]; then echo "Failed to configure OpenSSL" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi make depend make -j 4 if [ "$?" -ne "0" ]; then echo "Failed to build OpenSSL" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi echo "$SUDO_PASSWWORD" | sudo -S make install_sw cd .. ############################################################################### echo echo "********** PCRE **********" # https://savannah.gnu.org/bugs/?func=detailitem&item_id=26786 wget "https://ftp.pcre.org/pub/pcre//$PCRE_TAR" --no-check-certificate -O "$PCRE_TAR" if [[ "$?" -ne "0" ]]; then echo "Failed to download PCRE" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi rm -rf "$PCRE_DIR" &>/dev/null tar -xzf "$PCRE_TAR" cd "$PCRE_DIR" make configure CPPFLAGS="-I$INSTALL_ROOT/include" LDFLAGS="-Wl,-rpath,$INSTALL_LIB64 -L$INSTALL_LIB64" \ LIBS="-lidn2 -lz -ldl -lpthread" ./configure --enable-shared --enable-pcre2-8 --enable-pcre2-16 --enable-pcre2-32 \ --enable-unicode-properties --enable-pcregrep-libz --prefix="$INSTALL_ROOT" --libdir="$INSTALL_LIB64" if [[ "$?" -ne "0" ]]; then echo "Failed to configure PCRE" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi make all -j 4 if [ "$?" -ne "0" ]; then echo "Failed to build PCRE" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi echo "$SUDO_PASSWWORD" | sudo -S make install cd .. ############################################################################### echo echo "********** cURL **********" # https://savannah.gnu.org/bugs/?func=detailitem&item_id=26786 wget "https://curl.haxx.se/download/$CURL_TAR" --no-check-certificate -O "$CURL_TAR" if [[ "$?" -ne "0" ]]; then echo "Failed to download cURL" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi rm -rf "$CURL_DIR" &>/dev/null tar -xzf "$CURL_TAR" cd "$CURL_DIR" CPPFLAGS="-I$INSTALL_ROOT/include" LDFLAGS="-Wl,-rpath,$INSTALL_LIB64 -L$INSTALL_LIB64" \ LIBS="-lidn2 -lssl -lcrypto -lz -ldl -lpthread" \ ./configure --enable-shared --with-ssl="$INSTALL_ROOT" --with-libidn2="$INSTALL_ROOT" --libdir="$INSTALL_LIB64" if [[ "$?" -ne "0" ]]; then echo "Failed to configure cURL" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi make -j 4 if [ "$?" -ne "0" ]; then echo "Failed to build cURL" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi echo "$SUDO_PASSWWORD" | sudo -S make install cd .. ############################################################################### echo echo "********** Git **********" wget "https://github.com/git/git/archive/$GIT_TAR" -O "$GIT_TAR" if [[ "$?" -ne "0" ]]; then echo "Failed to download Git" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi rm -rf "$GIT_DIR" &>/dev/null tar -xzf "$GIT_TAR" cd "$GIT_DIR" make configure CPPFLAGS="-I$INSTALL_ROOT/include" LDFLAGS="-Wl,-rpath,$INSTALL_LIB64,-rpath,$INSTALL_LIB32 -L$INSTALL_LIB64 -L$INSTALL_LIB32" \ LIBS="-lidn2 -lssl -lcrypto -lz -ldl -lpthread" ./configure --with-openssl --with-curl --with-libpcre --prefix="$INSTALL_ROOT" if [[ "$?" -ne "0" ]]; then echo "Failed to configure Git" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi make all -j 4 if [ "$?" -ne "0" ]; then echo "Failed to build Git" [[ "" = "$BASH_SOURCE" ]] && exit 1 || return 1 fi MAKE=make MAKE_FLAGS=(install) if [[ ! -z `which asciidoc 2>/dev/null | grep -v 'no asciidoc'` ]]; then if [[ ! -z `which xmlto 2>/dev/null | grep -v 'no xmlto'` ]]; then MAKE_FLAGS+=("install-doc" "install-html" "install-info") fi fi echo "$SUDO_PASSWWORD" | sudo -S "$MAKE" "${MAKE_FLAGS[@]}" cd .. ############################################################################### echo echo "********** Cleanup **********" rm -rf "$OPENSSL_TAR $OPENSSL_DIR $UNISTR_TAR $UNISTR_DIR $CURL_TAR $CURL_DIR" rm -rf "$PCRE_TAR $PCRE_DIR $ZLIB_TAR $ZLIB_DIR $IDN2_TAR $IDN2_DIR $GIT_TAR $GIT_DIR" [[ "" = "$BASH_SOURCE" ]] && exit 0 || return 0
только что установил git, используя следующие инструкции:
установить EPEL V5
#rpm -Uvh http://archives.fedoraproject.org/pub/archive/epel/5/x86_64/epel-release-5-4.noarch.rpmУстановить Git
# yum install git git-daemonРегистрация
# git --versiongit version 1.8.2.3дополнительно установить Git GUI
# yum install git-guiдля i386 замените x86_64 на i386 в URL-адресе на шаге #1.
#rpm -Uvh http://archives.fedoraproject.org/pub/archive/epel/5/i386/epel-release-5-4.noarch.rpm
Это сработало для меня на CentOS:
установить зависимости:
yum -y install zlib-devel openssl-devel cpio expat-devel gettext-develGet Git
cd /usr/local/src wget http://code.google.com/p/git-core/downloads/detail?name=git-1.7.8.3.tar.gz tar xvzf git-1.7.8.3.tar.gz cd git-1.7.8.3Build Git
./configure make make install
просто обновите это для 2017 и более поздних версий, так как CentOS 5 достиг EOL и URL для EPEL изменился:
sudo rpm -Uvh http://archives.fedoraproject.org/pub/archive/epel/5/x86_64/epel-release-5-4.noarch.rpm sudo yum install gitЭто дает вам git 1.8.2.3
yum -y install zlib-devel openssl-devel cpio expat-devel gettext-devel Get the required version of GIT from https://www.kernel.org/pub/software/scm/git/ wget https://www.kernel.org/pub/software/scm/git/{version.gz} tar -xzvf git-version.gz cd git-version ./configure make make install
Comments