3 ms·
...what's this a reference to?
by akhilcacharya 8y ago
...what's this a reference to?
- yjftsjthsd-h 8y agoStatic linking, which makes this trick not work.
- saagarjha 8y agoAnd the fact that Go will embed raw syscalls in its binaries, which is also somewhat annoying.
- trasz 8y agoWhich is unsupported on anything other than Linux and various BSDs.
- floatboth 8y agoOn FreeBSD, it's supported but kinda sucks. e.g., porting to a new CPU architecture is hell (I contributed to the FreeBSD/aarch64 go port, someone else picked it up now…) The libc is the stable ABI on pretty much any OS that's not called Linux, just use it.
- yjftsjthsd-h 8y agoOkay, but now you're using a C library as the basis for your non-C programming language. I understand why it is that way, but that kind of sucks.
- floatboth 8y agoEhh… does it kind of suck? The ABI of libc's syscall wrappers is basically "here's some ELF symbols to call with some arguments using the operating system's preferred calling convention". The only really "C" thing about it, other than the name, is struct layouts of various arguments.