Got following error while building lang/go on FreeBSD 12 with custom kernel (also had same problem with FreeBSD 11) # Building packages and commands for freebsd/amd64. runtime go build runtime: /usr/build/usr/ports/lang/go14/work/go/pkg/tool/freebsd_amd64/6g: pipe: function not implemented Problem caused by lack of "pipe" system call, from src/UPDATING: 20160622: The libc stub for the pipe(2) system call has been replaced with a wrapper that calls the pipe2(2) system call and the pipe(2) system call is now only implemented by the kernels that include "options COMPAT_FREEBSD10" in their config file (this is the default). Users should ensure that this option is enabled in their kernel or upgrade userspace to r302092 before upgrading their kernel. I tried to add support for pipe2 system call to Go runtime sources (really just copied it from pipe_linux.go) but a little later I got error about fork/exec. Now I'm rebuilding kernel with COMPAT_FREEBSD10.
Yes, you have to keep COMPAT_FREEBSD10