Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

x/sys: gomobile build failed for x/crypto/ssh/terminal #22727

Closed
bonly opened this issue Nov 15, 2017 · 2 comments
Closed

x/sys: gomobile build failed for x/crypto/ssh/terminal #22727

bonly opened this issue Nov 15, 2017 · 2 comments

Comments

@bonly
Copy link

bonly commented Nov 15, 2017

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?

1.9.2 darwin/amd64

Does this issue reproduce with the latest release?

gomobile bind -v -x target ios myModule

What operating system and processor architecture are you using (go env)?

GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Volumes/opt/go.my"
GORACE=""
GOROOT="/Volumes/opt/go"
GOTOOLDIR="/Volumes/opt/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/fr/rwmjkhj940l99k591w076wvm0000gp/T/go-build769283346=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"

What did you do?

If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.

package myPackage

import (
"fmt"
_"golang.org/x/crypto/ssh/terminal"
_"golang.org/x/net/ipv4"
)

//export Fnc
func Fnc(){
  fmt.Printf("hhhh\n");
}

What did you expect to see?

buid sucess and got a static lib for xcode project

What did you see instead?

GOPATH=`pwd`:/Volumes/opt/go.my; GOARCH=arm64; GOOS=darwin; CGO_ENABLED=1; \
	gomobile bind -v -x -target ios ios
GOMOBILE=/Volumes/opt/go.my/pkg/gomobile
WORK=/var/folders/fr/rwmjkhj940l99k591w076wvm0000gp/T/gomobile-work-865984906
write /var/folders/fr/rwmjkhj940l99k591w076wvm0000gp/T/gomobile-work-865984906/src/gomobile_bind/interfaces.go
mkdir -p $WORK/src/gomobile_bind
write /var/folders/fr/rwmjkhj940l99k591w076wvm0000gp/T/gomobile-work-865984906/gen/src/ObjC/interfaces.go
mkdir -p $WORK/gen/src/ObjC
write /var/folders/fr/rwmjkhj940l99k591w076wvm0000gp/T/gomobile-work-865984906/src/gomobile_bind/interfaces.h
mkdir -p $WORK/src/gomobile_bind
write /var/folders/fr/rwmjkhj940l99k591w076wvm0000gp/T/gomobile-work-865984906/src/gomobile_bind/interfaces.m
mkdir -p $WORK/src/gomobile_bind
GOOS=darwin GOARCH=arm GOARM=7 CC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang CXX=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang CGO_CFLAGS=-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk -miphoneos-version-min=6.1 -arch armv7 CGO_LDFLAGS=-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.1.sdk -miphoneos-version-min=6.1 -arch armv7 CGO_ENABLED=1 GOPATH=$WORK/gen:$HOME/game2:$GOROOT.my go install -pkgdir=$GOMOBILE/pkg_darwin_arm -tags ios -v -x ios
WORK=/var/folders/fr/rwmjkhj940l99k591w076wvm0000gp/T/go-build631284828
golang.org/x/sys/unix
mkdir -p $WORK/golang.org/x/sys/unix/_obj/
mkdir -p $WORK/golang.org/x/sys/
cd /Volumes/opt/go.my/src/golang.org/x/sys/unix
/Volumes/opt/go/pkg/tool/darwin_amd64/compile -o $WORK/golang.org/x/sys/unix.a -trimpath $WORK -shared -goversion go1.9.2 -p golang.org/x/sys/unix -buildid c8254e6d47d96859d437468aa6d2e996ee3d8ade -dwarf=false -D _/Volumes/opt/go.my/src/golang.org/x/sys/unix -I $WORK -I /Volumes/opt/go.my/pkg/gomobile/pkg_darwin_arm -pack -asmhdr $WORK/golang.org/x/sys/unix/_obj/go_asm.h ./constants.go ./dev_darwin.go ./dirent.go ./endian_little.go ./env_unix.go ./env_unset.go ./flock.go ./pagesize_unix.go ./race0.go ./sockcmsg_unix.go ./str.go ./syscall.go ./syscall_bsd.go ./syscall_darwin.go ./syscall_darwin_arm.go ./syscall_unix.go ./syscall_unix_gc.go ./timestruct.go ./zerrors_darwin_arm.go ./zsyscall_darwin_arm.go ./zsysnum_darwin_arm.go ./ztypes_darwin_arm.go
golang.org/x/sys/unix
/Volumes/opt/go.my/src/golang.org/x/sys/unix/zsyscall_darwin_arm.go:224:23: undefined: SYS___SYSCTL
rm -r -f "$WORK"
gomobile: go install -pkgdir=/Volumes/opt/go.my/pkg/gomobile/pkg_darwin_arm -tags ios -v -x ios failed: exit status 2
@tklauser
Copy link
Member

The root cause is an error in x/sys which is used by x/crypto/ssh/terminal. The interesting bit is:

/Volumes/opt/go.my/src/golang.org/x/sys/unix/zsyscall_darwin_arm.go:224:23: undefined: SYS___SYSCTL

This was also reported as for #22839 and should be fixed by https://go-review.googlesource.com/79155.

@bonly Can you please check again?

@mikioh mikioh changed the title gomobile build failed for net/ipv4 x/sys: gomobile build failed for x/crypto/ssh/terminal Dec 1, 2017
@gopherbot gopherbot added this to the Unreleased milestone Dec 1, 2017
@tklauser
Copy link
Member

Considering this fixed by https://go-review.googlesource.com/79155

@bonly Please feel free to reopen in case you still experience this problem with the latest version of x/crypto and x/sys.

@golang golang locked and limited conversation to collaborators Jan 16, 2019
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants