git-evtag icon indicating copy to clipboard operation
git-evtag copied to clipboard

Installation instructions

Open gwern opened this issue 8 years ago • 3 comments

Related to a suggestion for better cryptographic timestamping of Git repos & other things, git-evtag was proposed as a solution to the weak SHA-1 hashes Git uses. I wanted to try it out to see whether it could be easily used with the timestamping as a post-commit hook, but I can't seem to get it to compile/install, and the README currently includes nothing about how to install it.

What I tried on my Ubuntu 14.04.3 LTS system:

git --version
# git version 1.9.1
git clone 'https://github.com/cgwalters/git-evtag.git'
cd ./git-evtag/
sudo apt-get install libglib2.0-dev libgit2-dev
./autogen.sh
./configure --prefix=/home/gwern/bin
make && make install

This errors out during the make:

make  all-recursive
make[1]: Entering directory `/home/gwern/src/git-evtag'
make[2]: Entering directory `/home/gwern/src/git-evtag'
  CC       git_evtag-git-evtag.o
src/git-evtag.c: In function ‘checksum_tree_callback’:
src/git-evtag.c:263:9: error: implicit declaration of function ‘git_submodule_free’ [-Werror=implicit-function-declaration]
         git_submodule_free (submod);
         ^
src/git-evtag.c: In function ‘main’:
src/git-evtag.c:988:3: error: implicit declaration of function ‘git_status_init_options’ [-Werror=implicit-function-declaration]
   r = git_status_init_options (&statusopts, GIT_STATUS_OPTIONS_VERSION);
   ^
cc1: some warnings being treated as errors
make[2]: *** [git_evtag-git-evtag.o] Error 1
make[2]: Leaving directory `/home/gwern/src/git-evtag'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/gwern/src/git-evtag'
make: *** [all] Error 2

If I'm doing something wrong here, please advise; it would also be good if an authoritative section could be added to the README explaining how to compile & install this.

gwern avatar Dec 03 '15 18:12 gwern

Yeah, I need to add a section on this. And precompiled binaries.

That said, it looks like the Ubuntu LTS version of libgit2 is possibly too old to support.

cgwalters avatar Dec 03 '15 19:12 cgwalters

A problem with libgit2 is they break ABI...in order to achieve wide distribution we may need to support bundling it.

cgwalters avatar Dec 03 '15 19:12 cgwalters

On my MacOS it seems like it fails trying to generate the manage... (after installing libgit2 through homebrew)

zbeekman avatar Feb 25 '17 19:02 zbeekman