2017-10-12 3 views
0

Quelle version de Go utilisez-vous (version go)?x/mobile/app Impossible de compiler pour iOS

go version go1.9 darwin/amd64 
XCode Version 9.0 (9A235) 

Quelle architecture de système d'exploitation et de processeur utilisez-vous (go env)?

GOARCH="amd64" 
GOBIN="" 
GOEXE="" 
GOHOSTARCH="amd64" 
GOHOSTOS="darwin" 
GOOS="darwin" 
GOPATH="https://stackoverflow.com/users/sh.garatuev/go" 
GORACE="" 
GOROOT="/usr/local/go" 
GOTOOLDIR="/usr/local/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/3l/h5gppnys24d6rkswsm0079mr0000gp/T/go-build268352381=/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" 

Qu'avez-vous fait?

Exécutez gomobile bind -target ios pour un package le plus simple avec une fonction.

package mSensor 

import (
    "fmt" 

    _ "golang.org/x/mobile/app" 
) 

func HelloGo() { 
    fmt.Println("Hello Go!") 
} 

Qu'as-tu espéré voir?

DEVRAIENT obtenir package binded avec succès pour l'utilisation dans XCode 9.0

Qu'avez-vous vu à la place?

gomobile: darwin-x86_64: go build -pkgdir=/users/sh.garatuev/go/pkg/gomobile/pkg_darwin_amd64 -tags ios -buildmode=c-archive -o /var/folders/3l/h5gppnys24d6rkswsm0079mr0000gp/T/gomobile-work-272988193/mSensor-amd64.a /var/folders/3l/h5gppnys24d6rkswsm0079mr0000gp/T/gomobile-work-272988193/src/iosbin/main.go failed: exit status 2 
# golang.org/x/mobile/app 
../../golang.org/x/mobile/app/darwin_amd64.go:16:9: fatal error: 'Carbon/Carbon.h' file not found 
#import <Carbon/Carbon.h> // for HIToolbox/Events.h 
     ^~~~~~~~~~~~~~~~~ 

1 erreur générée. J'ai créé issue sur github. Toute aide, s'il vous plaît?

Répondre

0

excluez simplement "golang.org/x/mobile/app" l'importation et la construction fonctionneraient correctement. Cette importation est nécessaire uniquement pour les versions Android.