git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] Add more instructions about how to install git.

From
Brian Gernhardt <brian@gernhardtsoftware.com>
Date
Sep 8, 2009, 15:19 UTC
Message-ID
<D79F79B1-A4F4-4AEA-9E3B-F0CF59019B88@gernhardtsoftware.com>
In-Reply-To
<a4c8a6d00909080752p5b663fc8r8bf1c60023ef39b4@mail.gmail.com>
On Sep 8, 2009, at 10:52 AM, Thiago Farina wrote:
Show 16 quoted lines
> On Tue, Sep 8, 2009 at 10:38 AM, Johannes Sixt<j.sixt@viscovery.net>  
> wrote:
>> Then guessed wrong. You really only have to say "make". The use of
>> autoconf and ./configure is purely optional and not necessary.
> I don't think so.
> Running only "make".
> $ make
> GIT_VERSION = 1.6.5.rc0
>    * new build flags or prefix
>    CC fast-import.o
> In file included from builtin.h:4,
>                 from fast-import.c:143:
> git-compat-util.h:129:25: error: openssl/ssl.h: No such file or  
> directory
> git-compat-util.h:130:25: error: openssl/err.h: No such file or  
> directory

You don't have OpenSSL, a perquisite mentioned in the INSTALL file at line 55. You can do the following:

make NO_OPENSSL=Yes
or save the option so you don't have to retype it each time:

echo "NO_OPENSSL=Yes" > config.mak make

Or install OpenSSL or run the autoconf.

The Makefile tries it's best to be as smart as possible without being a configure script of it's own (see ll. 656-925), and it's highly commented at the beginning so that only a minimal knowledge of make is required (ll. 4-198). I suppose we could note that the defines should be put in a config.mak file.

> Running configure and then make
> $ make configure
> GIT_VERSION = 1.6.5.rc0.dirty
>    GEN configure
  $ ./configure
[lots of output]
> $ make
>    CC fast-import.o

As pointed out before, you forgot to run the generated configure script (as already documented at Makefile:20).

However, it's generally considered preferable to hand-create a config.mak for the few options you need on a regular basis and let the Makefile do it's work. The autoconf files occasionally lag behind the rest of development as they're not widely used by git developers (AFAICT).

I'd personally argue that we should point out in INSTALL that git can be configured via a hand-written config.mak using the defines described at the top of the Makefile before we talk about using autoconf. (Perhaps with quick notes about the most commonly used defines.)

For example, my config.mak contains:

prefix=/usr/local ASCIIDOC8=Yes MAN_BOLD_LITERAL=Yes BLK_SHA1=Yes

The rest of the configuration for my OS (OS X/Darwin, specifically) are handled by the Makefile.

~~ Brian
Previous: Mikael MagnussonNext: Matthieu Moy
Message 10 of 11 in “Add more instructions about how to install git.”
  1. Add more instructions about how to install git.Thiago Farina, Sep 8, 2009
  2. Alex RiesenSep 8, 2009
  3. Matthieu MoySep 8, 2009
  4. Michael J GruberSep 8, 2009
  5. Thiago FarinaSep 8, 2009
  6. Erik Faye-LundSep 8, 2009
  7. Johannes SixtSep 8, 2009
  8. Thiago FarinaSep 8, 2009
  9. Mikael MagnussonSep 8, 2009
  10. Brian GernhardtSep 8, 2009
  11. Matthieu MoySep 8, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.