I reproduced the problem using the gomobile bind example with the following code changes.
diff --git a/cmd/gomobile/build_iosapp.go b/cmd/gomobile/build_iosapp.go index 0b2a923..8480790 100644 --- a/cmd/gomobile/build_iosapp.go +++ b/cmd/gomobile/build_iosapp.go @@ -31,7 +31,7 @@ func goIOSBuild(pkg *build.Package) (map[string]bool, error) { infoplist := new(bytes.Buffer) if err := infoplistTmpl.Execute(infoplist, infoplistTmplData{ // TODO: better bundle id. - BundleID: "org.golang.todo." + productName, + BundleID: "com.galvanizedlogic.bios", Name: strings.Title(path.Base(pkg.ImportPath)), }); err != nil { return nil, err @@ -97,7 +97,7 @@ func goIOSBuild(pkg *build.Package) (map[string]bool, error) { // Build and move the release build to the output directory. cmd = exec.Command( "xcrun", "xcodebuild", - "-configuration", "Release", + "-configuration", "Release", "-allowProvisioningUpdates", "-project", tmpdir+"/main.xcodeproj", ) if err := runCmd(cmd); err != nil { @@ -312,12 +312,14 @@ const projPbxproj = `// !$*UTF8*$! ORGANIZATIONNAME = Developer; TargetAttributes = { 254BB83D1B1FD08900C56DE9 = { - CreatedOnToolsVersion = 6.3.1; + CreatedOnToolsVersion = 9.0; + DevelopmentTeam = 9829M3WGFP; + ProvisioningStyle = Automatic; }; }; }; buildConfigurationList = 254BB8391B1FD08900C56DE9 /* Build configuration list for PBXProject "main" */; - compatibilityVersion = "Xcode 3.2"; + compatibilityVersion = "Xcode 8.0"; developmentRegion = English; hasScannedForEncodings = 0; knownRegions = ( Then repackaged bios.app and bios.ipa using the binary from the gomobile basic.app (avoids a bunch of invalid or missing icon errors). Validated that the app runs on an iphone 7. The upload ipa resulted in the following errors: The "Invalid Bundle" is because gomobile builds a binary with both 32 and 64 bit executables. I can't explain the PIE error. I did not get this error in the bios build even though I saw the "-nopie" when looking at a previous bios linker debug output. Off to try tip now. On Sunday, October 22, 2017 at 4:32:44 AM UTC-4, Elias Naur wrote: > > Another thing: Is the problem present in go tip (to become 1.10) as well? > And finally, can you reproduce the problem with the simple > golang.org/x/mobile/example/bind example? > > - elias > > On Sunday, October 22, 2017 at 10:26:15 AM UTC+2, Elias Naur wrote: >> >> Hi Paul, >> >> What version of Go, Xcode an macOS are you using? I'd like to help you >> debug the problem, but Xcode doesn't seem to allow me to run the validation >> of an archived build without a developer account. >> >> - elias >> >> On Sunday, October 22, 2017 at 6:34:15 AM UTC+2, pru...@gmail.com wrote: >>> >>> I'm getting the following error when trying to publish a go app to the >>> itunes connect app store. >>> >>> ERROR ITMS-90209: "Invalid Segment Alignment. The app binary at >>> 'bios.app/bios' does not have proper segment alignment. Try rebuilding the >>> app with the latest Xcode version." >>> >>> Please: Can anyone tell me what this error means and how to debug it? >>> I need help to determine if its just a matter of adding some external >>> linker flags, >>> or if Apple has changed their ios binary requirements, or its something >>> else entirely. >>> I've created a test project at github.com/gazed/bios that can be used >>> to recreate the error. >>> >>> Background: >>> >>> - Similar to >>> https://groups.google.com/forum/#!topic/golang-nuts/7TyYy5OIqD0 >>> - I've duplicated this error using the above github project, and >>> also by submitting from xcode directly, and also by using a generated >>> xcode >>> project and the command line xcodebuild. >>> - The above basic ios app works in developer mode. Its been run it >>> on iphones 6S, 7, an ipad mini, and an ipad pro (great job on the go >>> arm64 >>> support!). >>> - I have submitted an ios developer support ticket asking apple for >>> more details regarding the apple error from the apple Application Loader >>> tool. Apple replied: >>> >>> "Thank you for contacting Apple Developer Technical Support (DTS). >>> We’ve determined that your question should be addressed by the support >>> channel for Go - the third-party resource you are using. DTS supports >>> developers using Apple-authored tools and frameworks only.". >>> >>> >>> Does the go development team have better access to apple support >>> regarding details on apple errors? >>> >>> >>> - The google info on this error is sketchy. It is sometimes raised >>> by those using ios framework tools and the problems are resolved by the >>> framework developers, but I've not yet located a detailed description of >>> the problem or how to debug it. >>> >>> Thank you, >>> Paul >>> >> -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.