We have recently imposed the strict versioning of golang for making the consistent build between the server, meshery-extensions and their adapters. This was important to introduce consistency. Furthermore, some previous versions of golang before go-1.17 seems to create few problems with the build.
We want you to use the go version: 1.17.8 but it’s fine if you use any latest like 1.18.x too(though we have not done any stable-tests on it)
To see your go version:
go version
output: go version go1.17.8 linux/amd64
If your go version is fine, you can comment out this line to use your default go binary of your system without imposing version restriction.
Another Option
You may try to download version-specific go binaries and make it executable and store it in your usr/bin where your binaries are located. More information on go-docs
It might be that you have golang 1.19 installed, but that you don’t have a binary under the filename of go1.19, which will curse you to see a warning message when running make server. You can test by verifying the output of a which go1.19.
@Antonette.Caldwell is actively considering how this contributor experience might be improved and is a good individual to connect with on the subject, @Rakshit.Gondwal.
Commenting out the Go version 1.19.1line in the Makefile.core.mk worked for me. I had this doubt that why we have this line in the code if it is bound to create errors. Shouldn’t we just remove this line from the codebase?