ST build assistance

I’m trying to rebuild ST after a long while of no development and getting a weird error:

# github.com/syncthing/syncthing/cmd/syncthing
.\gui.go:139: undefined: auto.Assets
.\gui.go:300: undefined: auto.Assets
Error: process exited with code 2.

I seem to have both files in the lib/auto dir as they show up on github so I dont really know the problem. https://github.com/syncthing/syncthing/tree/master/lib/auto

And of course I’m unable to build because of this.

I believe the build tools assume you’re in the repository root?

How can I check? I believe I am already.

When I get errors saying another module is missing and I use “go get” to download them, it fixes the issue. Wouldn’t this suggest my paths are correct already?

Also I neglected to mention but… This IDE (LiteIDE) was working perfectly a few months ago. All I did was ‘git fetch’ the newest commits and create a new branch from my copy of the master. I then noticed I was missing a few things added since then when trying to build (like github.com/AudriusButkevicius/go-nat-pmp). But after deleting all and re-“go get” everything I’m here now. Dunno how to fix this one because I already have it in my repo.

You need to use the build scripts, the code is not go-gettable.

go run build.go should put a binary in ./bin

Thanks that worked.

Since when has this been the case though? I use to be able to just run straight from the menu in LiteIDE.

Since fairly recently. You can still do that though, after having built it once using the script to generate the file in question.

I’m trying to cross-compile for arm with 64k page size. I’m following the instructions from Request for 64k binaries . However, I get an error:

undefined: auto.Assets

I guess, because I’m not using the build script. Is there a way to use it to create a 64k arm binary?

Thanks!

Run go run build.go assets before you start compiling the rest.

1 Like

Worked like a charm. Thank you!