Compile o Git para usar a biblioteca OpenSSL libssl.so.1.0.1

0

Executando um sistema que tenha suporte total somente para o OpenSSL versão 0.9.8.

Instalado em paralelo são as bibliotecas OpenSSL 1.0.1 (Suportado pela Distro)

O Git ainda preferencialmente usa as bibliotecas 0.9.8, mas precisamos usar o 1.0.1.

O Git pode ser construído a partir da fonte para usar as bibliotecas libssl.so.1.0.0, para que possamos interagir com o link usando o TLS v1.2?

Por exemplo:

/usr/lib64/git/git-http-fetch -> libssl.so.0.9.8 => /usr/lib64/libssl.so.0.9.8 (0x00007ffff6c78000) /usr/lib64/git/git-http-push -> libssl.so.0.9.8 => /usr/lib64/libssl.so.0.9.8 (0x00007ffff6a4d000) /usr/lib64/git/git-imap-send -> libssl.so.0.9.8 => /usr/lib64/libssl.so.0.9.8 (0x00007ffff7d56000) /usr/lib64/git/git-remote-ftp -> libssl.so.0.9.8 => /usr/lib64/libssl.so.0.9.8 (0x00007ffff6a4d000) /usr/lib64/git/git-remote-ftps -> libssl.so.0.9.8 => /usr/lib64/libssl.so.0.9.8 (0x00007ffff6a4d000) /usr/lib64/git/git-remote-http -> libssl.so.0.9.8 => /usr/lib64/libssl.so.0.9.8 (0x00007ffff6a4d000) /usr/lib64/git/git-remote-https -> libssl.so.0.9.8 => /usr/lib64/libssl.so.0.9.8 (0x00007ffff6a4d000)

É necessário vincular a libssl.so.1.0.0

    
por Bee Min 18.04.2018 / 15:13

1 resposta

0

Isso pareceu funcionar (para fins de teste) Com agradecimentos a Shawna Jean

Construindo o Git contra as bibliotecas que queríamos.

export LD_LIBRARY_PATH=~/git-test-inst/lib
mkdir git-test-inst

cd git-test-inst/
wget https://dl.uxnr.de/mirror/curl/curl-7.59.0.tar.gz
wget https://www.openssl.org/source/openssl-1.1.0h.tar.gz
wget https://github.com/git/git/archive/v2.16.3.tar.gz
mv v2.16.3 git-2.16.3.tar.gz

tar -xf openssl-1.1.0h.tar.gz 
cd openssl-1.1.0h
./config --prefix=/home/$USER/git-test-inst
make -j16
make -j16 install
cd ../

tar xf curl-7.59.0.tar.gz 
cd curl-7.59.0
./configure --with-ssl=/home/$USER/git-test-inst/ --prefix=/home/$USER/git-test-inst/
make -j16
make install
ldd /home/$USER/git-test-inst/lib/libcurl.so.4.5.0 
cd ..

tar xf git-2.16.3.tar.gz 
cd git-2.16.3
make configure
./configure --prefix=/home/$USER/git-test-inst/ --with-openssl=/home/$USER/git-test-inst/ --with-curl=/home/$USER/git-test-inst/
make -j16
make install
ldd /home/$USER/git-test-inst/libexec/git-core/git-remote-https

E o testado contra as recompras Github.com

    
por 19.04.2018 / 15:17