Hello,
I want to use git-annex on a couple of machines that are not under my control (and one that is). For that I use the provided static build, but encountered several problems:
I suppose the first step for command line use is to execute runshell:
On one machine:
flindner@yoko:~> software/git-annex.linux/runshell /bin/bash: /lib64/libc.so.6: version `GLIBC_2.11' not found (required by /home/flindner/software/git-annex.linux//lib/x86_64-linux-gnu/libreadline.so.6)
Is there anything I can do about it?
On the other machine:
flindner@bladefoam2:~$ software/git-annex.linux/runshell bash-4.1$
It starts a bare, non-configured shell instance. Can I modifiy and source the script to only set the environment and not start up a new shell?
Another question: If using ssh:// remotes, how can I tell git-annex the first command to set up the environment need in order to execute command via SSH?
Thanks,
Florian
Yes, it seems glibc 2.11 is the oldest version you can get away with. At least until we get a build machine with some truely ancient libc, but modern versions of everything else. Statically linking libc, or including it in the tarball are unfortunatly not technically possible.
You don't need to use runshell if you just want to use the assistant. Which is what this static build is really targeted for. If you want to use all of git-annex, you're probably better off installing it properly. It is possible to use "runshell git annex" to run a single command inside the shell. Or even make shell script wrappers that do that.. but it seems more difficult than installing git-annex normally.
The static build can be used with ssh. The git-annex assistant should set things up properly. If you want to do it by hand, when it does is configure the ssh key to run ~/.ssh/git-annex-shell, and that file is then made a shell script that runs
runshell git-annex-shell -c "$SSH_ORIGINAL_COMMAND"
Hi Florian,
I maintain a makefile for GNU/Linux systems that builds git-annex from scratch using a single command.
The makefile fetches pre-compiled GHC 6.x (x86_64), which works on old systems (e.g. RHEL 5), builds a recent GHC 7.x from source, a minimal Haskell environment with cabal-install, and finally git-annex. I have succesfully compiled git-annex on RHEL 5.x and 6.x, and CentOS 6.x.
If the build fails using the system's GCC, there is also a newer GCC in the same makefile:
Regards, Peter