On Thu, May 31, 2018 at 06:30:18PM +0200, ml...@posteo.de wrote:

> I was trying to build git 2.9.5 as a normal user, as I have no root access
> on a cluster with outdated software.
> 
> The build fails, unless I change the PREFIX=/usr/local line in
> per/perl.mak:80 to a folder where I have write permission.
> Apparently, perl.mak does not honour the --prefix= setting of ./configure.

Weird, I can't reproduce. That perl.mak is generated by running
Makefile.PL.

If I follow your steps:

> wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.9.5.tar.xz
> tar xf git-2.9.5.tar.xz
> cd git-2.9.5
> ./configure --prefix=$HOME/.usr
> make

During this step I get output like this (amidst the other compiles):

  /usr/bin/perl Makefile.PL PREFIX='/tmp/foo' INSTALL_BASE='' 
--localedir='/tmp/foo/share/locale'
  Generating a Unix-style perl.mak
  Writing perl.mak for Git

So I wonder if there is some reason your perl MakeMaker module is not
behaving the same way.

At any rate, though, I don't know if it's worth digging too far. Git
v2.17 drastically simplified the perl section of the build process,
ditching MakeMaker completely. The new code is much simpler and follows
the same prefix rules as the rest of the Makefile. So probably the
simplest thing is try v2.17.1.

-Peff

Reply via email to