Compile git for 32-bit linux on shared hosting

2019-02-21 22:00发布

I need to set up the Git client on a cheap shared hosting, with a no-name 32-bit Linux distribution. GCC isn't available so I can't compile it on the server. I do have at my disposal 2 other 64-bit Linux servers and an OSX laptop which I could try to cross-compile a binary on. But I can't seem to get it to compile correctly; when I push the binaries to the 32-bit server it says it can't run the executable. It looks from other sources like I need to add "-arch i386" and/or "-m32" to the ./configure or make commands to work for 32-bit, but I guess I'm not using them correctly. Anyone know how to do this, or alternately, where to find a universal 32-bit Git binary?

Thanks

3条回答
我命由我不由天
2楼-- · 2019-02-21 22:38

Honestly, if it were me, I would just fire up 32-bit Linux in a VM and compile there.

查看更多
可以哭但决不认输i
3楼-- · 2019-02-21 22:46

Your best bet is trying to compile git as a static binary. Your binary probably have different shared libraries versions (or even, not all dependencies installed).

This link:

How to build git for a host with no compiler

Provides information on how to build git as a static binary.

This stackoverflow answer provides information on how to cross compile it from a 64 bit host.

Hope this helps.

查看更多
淡お忘
4楼-- · 2019-02-21 22:52

OS X isn't going to work - its geared to produce Mach-O binaries with the OS X syscall interface, not Linux ELF binaries.

Using -m32 on the CLFAGS is going to help, but most importantly, use -static as well. Static binaries are much more portable.

If that fails, please provide exactly how it failed.

查看更多
登录 后发表回答