Please describe the problem.
I'm trying to get git-annex running on a WD MyCloud EX2 NAS.
There are a number of issues, I imagine to overcome, a few of which I've already managed to overcome.
What steps will reproduce the problem?
I've managed to get it to work as special remote via rsync. But, it's nowhere near ideal. I was hoping to get working properly by installing git-annex locally on the machine.
FYI, git 2.6.1 is already installed on the NAS.
I can ssh into the NAS no problem. Only user sshd is allowed to ssh, but that's ok. Furthermore, the which command is missing, which prevented webapp lunched on my Mac from creating an rsync remote. Overcame that hurdle by "faking" it:
> echo \#\!\/bin\/sh > /usr/bin/which
> echo command \-v \$\@ >> /usr/bin/which
> chmod +x /usr/bin/which
I've downloaded the latest arm build. After untaring and running runshell successfully, I can't get through the next step, which is running git annex. It results in the following error:
> git annex
/mnt/HD/HD_a2/git-annex/shimmed/git-annex/git-annex: error while loading shared libraries: /mnt/HD/HD_a2/git-annex/shimmed/git-annex/git-annex: ELF load command alignment not page-aligned
fatal: 'annex' appears to be a git command, but we were not able to execute it. Maybe git-annex is broken?
same goes for
> runshell git-annex-shell -c git annex:
/mnt/HD/HD_a2/Nas_Prog/git-annex/shimmed/git-annex-shell/git-annex-shell: error while loading shared libraries: /mnt/HD/HD_a2/Nas_Prog/git-annex/shimmed/git-annex-shell/git-annex-shell: ELF load command alignment not page-aligned
and pretty much any of the git-annex binaries.
Compiling from source is not an option. Any ideas? Thanks.
What version of git-annex are you using? On what operating system?
I'm trying the latest version of git-annex-standalone-armel.tar.gz downloaded 2015-10-10.
uname -a: Linux WDMyCloudEX2 3.2.40 #4 Fri Jul 31 16:04:18 CST 2015 armv7l GNU/Linux
Please provide any additional information below.
# If you can, paste a complete transcript of the problem occurring here.
# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log
# End of transcript or log.
Have you had any luck using git-annex before? (Sometimes we get tired of reading bug reports all day and a lil' positive end note does wonders)
Sure, runs on my Mac laptop
I wonder if this ELF issue extends to other binaries included in the git-annex bundle, or does it only affect the git-annex (and git-annex-shell) binary?
It looks like git is working when used inside runshell, and that is using a git binary from the git-annex bundle.
If so, it could have something to do with how the haskell binary is being linked. I found this thread about fixing this problem in the gold linker: https://sourceware.org/ml/binutils/2012-08/msg00486.html. IIRC the arm build is currently using the bfd linker, not gold.
Yup. It seems to affect mainly git-annex binaries...
So, does anyone out there have access to this gold linker, and could they please try to link it for the armv7l architecture? Thanks.
I've updated the arm daily build to use ld.gold temporarily.
Please give it a try and report back if it works and if so I'll make the change permanant.
As an aside, just tried syncthing's arm verion, and I get a "runtime: kernel page size (32768) is larger than runtime page size (4096)" error. While their arm64 version also won't run.
Perhaps it's a similar issue with git-annex? Seems the page-size comes up in a number of contexts of people trying to get software running on the WD NAS.
Is there any way to adjust this page-size in the linker?
Thanks
The arm daily build now uses a 32kb page size. So try https://downloads.kitenet.net/git-annex/autobuild/armel/git-annex-standalone-armel.tar.gz
That has been verified to fix the problem on a Drobo 5N.
This may still not be enough for some of the affected NAS devices, which use a 64kb page size. Unfortunately, gold fails to link with a 64kb page size: http://bugs.debian.org/844467