Cross-compiling with go for arm on amd64. Possible?

Carl Johnson carlj at peak.org
Fri Dec 6 17:06:06 UTC 2019


Scott Aitken <freebsd-lists-5 at thismonkey.com> writes:

> Hi,
>
> So I wanted to install dns/dnscrypt-proxy2 on my Raspberry Pi running FreeBSD 
> 12.0-RELEASE r341666 GENERIC arm.
>
> There's no package version, so I tried compiling. Unfortunately that didn't 
> work as the Go dependency ran out of RAM compiling. And there's no package 
> for Go...
>
> So I fired up a VM and installed ports-mgmt/poudriere. Set it all up and 
> added dns/dnscrypt-proxy2 to my shopping list...
>
> Unfortunately it skipped lang/go:
>
> Code:
> [00:01:14] [01] [00:00:00] Building lang/go | go-1.13.4,1
> [00:01:16] [01] [00:00:02] Finished lang/go | go-1.13.4,1: Ignored: fails to 
> build with qemu-user-static
> [00:01:16] [01] [00:00:02] Skipping dns/dnscrypt-proxy2 | 
> dnscrypt-proxy2-2.0.31_1: Dependent port lang/go | go-1.13.4,1 ignored
>
> Apparently Go 1.3 won't compile under the emulator (see PR 221297 for some 
> background.
>
> Is it possible for go to cross-compile for arm on amd64?

I don't know about cross-compiling, but I have built go from source on a
Raspberry Pi 2.  In my case I was running 12.1-RELEASE, and I built
go-1.13.1,1 about 2 weeks ago.  My typescript file doesn't show any
errors, and time showed a 28 minute build time and another 15 minutes to
create a binary package.  That was after installing the go14 binary
package.

-- 
Carl Johnson		carlj at peak.org



More information about the freebsd-questions mailing list