istio/old_pilot_repo

make setup command fails on s390x system

kadamvandita opened this issue · 18 comments

make setup command fails with error:

external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: uE@p@8: not found
external/go1_8_3_linux_amd64/bin/go: 2: external/go1_8_3_linux_amd64/bin/go: @$: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go:ELF: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: æ: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: ð: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: ð{ð{k°: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: Ô: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: L: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: ä: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: Gð{ð: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: cannot open 0B0BN
BHBHBNè
Qÿÿÿo@E@ENH
^þÿÿo E ENP: No such file
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: -R: not found
external/go1_8_3_linux_amd64/bin/go: 2: external/go1_8_3_linux_amd64/bin/go:FFN´
ýÀFNm4@H@HN: not found
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: JN: not found
external/go1_8_3_linux_amd64/bin/go: 2: external/go1_8_3_linux_amd64/bin/go: Æ: not found
external/go1_8_3_linux_amd64/bin/go: 4: external/go1_8_3_linux_amd64/bin/go:OÀMÀMNÀ: not found cððNmNk: not foundlinux_amd64/bin/go: 4: external/go1_8_3_linux_amd64/bin/go: YNp
external/go1_8_3_linux_amd64/bin/go: 1: external/go1_8_3_linux_amd64/bin/go: Syntax error: Unterminated quoted string

on s390x architecture

this is bazel error.. its pulling amd64 instead of arch specific go.

I have installed s390x specific bazel.Also have changed couple of files to pull s390x.It pulled specific to s390x,but futher failed @ this error

Want to know exactly which file to change so that it picks s390x instead of amd64.

Should share same root cause with bazelbuild/rules_go#854

I tried building rules_go for s390x, The version of rules_go used is 0.5.4, and version of bazel used is 0.5.4.

Its failing with error:
ERROR: /home/test/.cache/bazel/_bazel_test/c509b597658b872a6b74db25bd62d9f3/external/io_bazel_rules_go/go/tools/extract_package/BUILD:26:1: Traceback (most recent call last):
File "/home/test/.cache/bazel/_bazel_test/c509b597658b872a6b74db25bd62d9f3/external/io_bazel_rules_go/go/tools/extract_package/BUILD", line 26
go_binary(name = "extract_package", importpa...", <2 more arguments>)
File "/home/test/.cache/bazel/_bazel_test/c509b597658b872a6b74db25bd62d9f3/external/io_bazel_rules_go/go/private/wrappers.bzl", line 51, in go_binary
go_binary(name = name, srcs = srcs, cgo_object..., ...)
go_binary rule 'extract_package' in package 'go/tools/extract_package' conflicts with existing go_tool_binary rule, defined at /home/test/.cache/bazel/_bazel_test/c509b597658b872a6b74db25bd62d9f3/external/io_bazel_rules_go/go/tools/extract_package/BUILD:4:1.
ERROR: /home/test/.cache/bazel/_bazel_test/c509b597658b872a6b74db25bd62d9f3/external/io_bazel_rules_go/go/tools/extract_package/BUILD:4:1: Target '@io_bazel_rules_go//go/tools/extract_package:extract.go' contains an error and its package is in error and referenced by '@io_bazel_rules_go//go/tools/extract_package:extract_package'.
ERROR: /home/test/.cache/bazel/_bazel_test/c509b597658b872a6b74db25bd62d9f3/external/io_bazel_rules_go/go/toolchain/BUILD:5:1: every rule of type go_toolchain implicitly depends upon the target '@io_bazel_rules_go//go/tools/extract_package:extract_package', but this target could not be found because of: Target '@io_bazel_rules_go//go/tools/extract_package:extract_package' contains an error and its package is in error.
ERROR: Analysis of target '//:gazelle' failed; build aborted.

Any suggestions on this?

Can we use lower version (0.5.4) bazel to build go_rules latest version?

Hi @rshriram ,

I have built go_rules with s390x support. Need to knw how to incorporate rules_go in the pilot source
code.

hi.. please look at istio/istio. We have moved all code to istio/istio. Additionally we have added support for pure go build.

Hi @rshriram ,

Any updates on the build instructions to be used? shd we use make setup or something else

Issue moved to istio/istio #1376 via ZenHub

Hi @rshriram ,

In the latest stable release of istio 0.2.12, pilot source code is not present. Even if we try to build istio from top level workspace it throws the syntactical libs error. Any updates on this?

Hi, all code has moved to istio/istio repo. And we now build with standard go tools (aka no Bazel!). just fetch the repo, do dep ensure (you need to install the dep tool ) and then go build!
You can find an example of how we build in the .circleci/config.yml file (unittest job).

Hi @rshriram ,

On dep ensure I get error,could not find project Gopkg.toml, use dep init to initiate a manifest. On dep init, it downloads some file. Gets something.Then on go build it throws error, no go files found

you need to run these in a clone of github.com/istio/istio repository. not in pilot

yes..i am doing it in istio/istio repo. But can't find any .go files

Steps I followed:

cd $GOPATH/src/istio.io/istio
git clone https://github.com/istio/istio.git
cd istio
git checkout 0.2.12
dep init
dep ensure
go build

Please let me know if anything is wrong or missing

Hi @rshriram ,

Please update the README file , that will be of help in case of build instruction.