threads / discuss / 35711

libz and RHEL 5.9 compile of Git

Subject: libz and RHEL 5.9 compile of Git

## tl;dr

6 messages between Jan 22, 2014 and Jan 23, 2014.

replies: 5people: 4as markdown or json

salmansheikh· Jan 22, 2014, 15:59 UTC · lore
Hello,

I have a RHEL system that I am not the admin of. I needed to install git and got the source. Everything is okay until I got to this point below. I downloaded and installed the latest libz (1.2.8) but i installed it under a local directory under my user name (i.e. /home/ssheikh/local). The problem is that git only looks in the locations below. I even have that directory in my $LD_LIBRARY_PATH. So, how can I force make to use that version of libz and not the old one that came with this RHEL 5.9 distro?

[ssheikh@gs-560g3080090e git-1.8.3.4]$ make
    LINK git-credential-store
/usr/bin/ld: skipping incompatible /lib/libz.so when searching for -lz
/usr/bin/ld: skipping incompatible /usr/lib/libz.so when searching for -lz
/usr/bin/ld: skipping incompatible /usr/lib/libz.a when searching for -lz
/usr/bin/ld: cannot find -lz
collect2: ld returned 1 exit status
make: *** [git-credential-store] Error 1

-- View this message in context: http://git.661346.n2.nabble.com/libz-and-RHEL-5-9-compile-of-Git-tp7602374.html Sent from the git mailing list archive at Nabble.com.

Jonathan Nieder· Jan 22, 2014, 16:30 UTC · re: salmansheikh · lore

Re: libz and RHEL 5.9 compile of Git

Hi,
salmansheikh wrote:
Show 5 quoted lines
>                                                                     I
> downloaded and installed the latest libz (1.2.8) but i installed it under a
> local directory under my user name (i.e. /home/ssheikh/local). The problem
> is that git only looks in the locations below. I even have that directory in
> my $LD_LIBRARY_PATH.

Confusingly, LD_LIBRARY_PATH is only used a run-time. The build time library path is just called LIBRARY_PATH.

You may also need to add your libz's include/ dir to CPATH. See http://gcc.gnu.org/onlinedocs/gcc/Environment-Variables.html for more details.

Hope that helps, Jonathan

Torsten Bögershausen· Jan 22, 2014, 19:59 UTC · re: salmansheikh · lore

Re: libz and RHEL 5.9 compile of Git

On 2014-01-22 16.59, salmansheikh wrote:
Show 19 quoted lines
> Hello,
> 
> I have a RHEL system that I am not the admin of. I needed to install git and
> got the source. Everything is okay until I got to this point below. I
> downloaded and installed the latest libz (1.2.8) but i installed it under a
> local directory under my user name (i.e. /home/ssheikh/local). The problem
> is that git only looks in the locations below. I even have that directory in
> my $LD_LIBRARY_PATH. So, how can I force make to use that version of libz
> and not the old one that came with this RHEL 5.9 distro?
> 
> [ssheikh@gs-560g3080090e git-1.8.3.4]$ make
>     LINK git-credential-store
> /usr/bin/ld: skipping incompatible /lib/libz.so when searching for -lz
> /usr/bin/ld: skipping incompatible /usr/lib/libz.so when searching for -lz
> /usr/bin/ld: skipping incompatible /usr/lib/libz.a when searching for -lz
> /usr/bin/ld: cannot find -lz
> collect2: ld returned 1 exit status
> make: *** [git-credential-store] Error 1
> 

You need to tell the linker where to search for the library. Please have a look at the Makefile:

ifdef ZLIB_PATH
	BASIC_CFLAGS += -I$(ZLIB_PATH)/include
	EXTLIBS += -L$(ZLIB_PATH)/$(lib) $(CC_LD_DYNPATH)$(ZLIB_PATH)/$(lib)
endif
salmansheikh· Jan 22, 2014, 21:27 UTC · re: Torsten Bögershausen · lore

Re: libz and RHEL 5.9 compile of Git

Got it working but then I had some issues with the perl portions of the install and I subsequently thought I could eliminate those portions and tried setting export NO_PERL=1 and that installed everything else...and got pass this error but when I tried to checkout a git repository as follows, I get some remote helper error. Is that related to the perl parts of the git?

git clone https://github.com/m-labs/migen.git Cloning into 'migen'... fatal: Unable to find remote helper for 'https'

*******************
install -d -m 755 '/home/ssheikh/local/libexec/git-core'
install   git-credential-store git-daemon git-fast-import git-http-backend
git-imap-send git-sh-i18n--envsubst git-shell git-show-index git-upload-pack
git-remote-testsvn git-credential-cache git-credential-cache--daemon git-am
git-bisect git-difftool--helper git-filter-branch git-lost-found
git-merge-octopus git-merge-one-file git-merge-resolve git-mergetool
git-pull git-quiltimport git-rebase git-repack git-request-pull git-stash
git-submodule git-web--browse git-add--interactive git-difftool
git-archimport git-cvsexportcommit git-cvsimport git-cvsserver git-relink
git-send-email git-svn git-remote-testpy git-p4 git-instaweb
'/home/ssheikh/local/libexec/git-core'
install -m 644  git-mergetool--lib git-parse-remote git-rebase--am
git-rebase--interactive git-rebase--merge git-sh-setup git-sh-i18n
'/home/ssheikh/local/libexec/git-core'
install git git-upload-pack git-receive-pack git-upload-archive git-shell
git-cvsserver '/home/ssheikh/local/bin'
make -C templates DESTDIR='' install
make[1]: Entering directory `/home/ssheikh/Downloads/git-1.8.3.4/templates'
install -d -m 755 '/home/ssheikh/local/share/git-core/templates'
(cd blt && gtar cf - .) | \
        (cd '/home/ssheikh/local/share/git-core/templates' && umask 022 &&
gtar xof -)
make[1]: Leaving directory `/home/ssheikh/Downloads/git-1.8.3.4/templates'
install -d -m 755 '/home/ssheikh/local/libexec/git-core/mergetools'
install -m 644 mergetools/*
'/home/ssheikh/local/libexec/git-core/mergetools'
install -d -m 755 '/home/ssheikh/local/share/locale'
(cd po/build/locale && gtar cf - .) | \
        (cd '/home/ssheikh/local/share/locale' && umask 022 && gtar xof -)
make -C perl prefix='/home/ssheikh/local' DESTDIR='' install
make[1]: Entering directory `/home/ssheikh/Downloads/git-1.8.3.4/perl'
make[2]: Entering directory `/home/ssheikh/Downloads/git-1.8.3.4/perl'
mkdir /usr/local/lib64/perl5: Permission denied at
/usr/lib/perl5/5.8.8/ExtUtils/Install.pm line 112
make[2]: *** [pure_site_install] Error 13
make[2]: Leaving directory `/home/ssheikh/Downloads/git-1.8.3.4/perl'
make[1]: *** [install] Error 2
make[1]: Leaving directory `/home/ssheikh/Downloads/git-1.8.3.4/perl'
make: *** [install] Error 2
*********************************************************

-- View this message in context: http://git.661346.n2.nabble.com/libz-and-RHEL-5-9-compile-of-Git-tp7602374p7602400.html Sent from the git mailing list archive at Nabble.com.

Jeff King· Jan 23, 2014, 01:45 UTC · re: salmansheikh · lore

Re: libz and RHEL 5.9 compile of Git

On Wed, Jan 22, 2014 at 01:27:09PM -0800, salmansheikh wrote:
Show 9 quoted lines
> Got it working but then I had some issues with the perl portions of the
> install and I subsequently thought I could eliminate those portions and
> tried setting export NO_PERL=1 and that installed everything else...and got
> pass this error but when I tried to checkout a git repository as follows, I
> get some remote helper error. Is that related to the perl parts of the git? 
> 
> git clone https://github.com/m-labs/migen.git
> Cloning into 'migen'...
> fatal: Unable to find remote helper for 'https'

Did you build with libcurl support? That's what all of the https code is built on.

-Peff
Torsten Bögershausen· Jan 23, 2014, 13:11 UTC · re: salmansheikh · lore

Re: libz and RHEL 5.9 compile of Git

On 2014-01-22 22.27, salmansheikh wrote:
Show 5 quoted lines
> Got it working but then I had some issues with the perl portions of the
> install and I subsequently thought I could eliminate those portions and
> tried setting export NO_PERL=1 and that installed everything else...and got
> pass this error but when I tried to checkout a git repository as follows, I
> get some remote helper error. Is that related to the perl parts of the git? 
No
> git clone https://github.com/m-labs/migen.git
> Cloning into 'migen'...
> fatal: Unable to find remote helper for 'https'

Please have a look at libcurl. It seems that libcurl on your system does not support https

The Makefile of Git is your friend: # Define CURLDIR=/foo/bar if your curl header and library files are in # /foo/bar/include and /foo/bar/lib directories.

← back to recent threads