{"action":"created","issue":{"url":"https://api.github.com/repos/Carthage/Carthage/issues/417","labels_url":"https://api.github.com/repos/Carthage/Carthage/issues/417/labels{/name}","comments_url":"https://api.github.com/repos/Carthage/Carthage/issues/417/comments","events_url":"https://api.github.com/repos/Carthage/Carthage/issues/417/events","html_url":"https://github.com/Carthage/Carthage/issues/417","id":67009796,"number":417,"title":"Carthage build fails with iOS 7.1 simulator installed","user":{"login":"erichoracek","id":438313,"avatar_url":"https://avatars.githubusercontent.com/u/438313?v=3","gravatar_id":"","url":"https://api.github.com/users/erichoracek","html_url":"https://github.com/erichoracek","followers_url":"https://api.github.com/users/erichoracek/followers","following_url":"https://api.github.com/users/erichoracek/following{/other_user}","gists_url":"https://api.github.com/users/erichoracek/gists{/gist_id}","starred_url":"https://api.github.com/users/erichoracek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/erichoracek/subscriptions","organizations_url":"https://api.github.com/users/erichoracek/orgs","repos_url":"https://api.github.com/users/erichoracek/repos","events_url":"https://api.github.com/users/erichoracek/events{/privacy}","received_events_url":"https://api.github.com/users/erichoracek/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/Carthage/Carthage/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/Carthage/Carthage/labels/build","name":"build","color":"bfe5bf"},{"url":"https://api.github.com/repos/Carthage/Carthage/labels/help%20wanted","name":"help wanted","color":"159818"}],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":11,"created_at":"2015-04-07T23:08:56Z","updated_at":"2015-10-27T18:21:19Z","closed_at":"2015-08-12T01:30:35Z","body":"Steps to reproduce:\r\n\r\n- Install the iOS 7.1 Simulator in Xcode 6.2\r\n- Create a new Cocoa Touch Framework project in Xcode\r\n- Run `carthage build --no-skip-current` in the directory that the Framework project was created in\r\n\r\nYou will receive the following build error:\r\n\r\n```\r\nCompileC ...\r\ninvalid architecture 'arm64' for deployment target '-mios-simulator-version-min=8.2'\r\nCommand /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang failed with exit code 1\r\n```\r\n\r\nThis is due to the fact that Carthage (as far as I can tell) is running the following command during `carthage build --no-skip-current`:\r\n\r\n```\r\nxcodebuild build -scheme Framework -sdk iphonesimulator\r\n```\r\n\r\nIf you run the above command on your new framework project, you will see the same build error that is produced when you run `carthage build`.\r\n\r\nAs far as I can tell, the reason for this failure is that when no destination is specified in a build command, `xcodebuild` implicitly selects a destination simulator to build for. Since we have the iOS 7.1 Simulator installed, it is (for some reason) picked as the default destination, causing the above error to occur. However, if you select the latest simulator as the build destination via the command line:\r\n\r\n```bash\r\nxcodebuild build -scheme Framework -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 4s,OS=latest'\r\n```\r\n\r\nThere is no build failure. The solution for this (as far as I can tell) would be to have Carthage allow for a `destination` option to be specified in addition to the existing `platform` and `configuration` options, or simply to not support Xcode installs that have pre-iOS 8 simulators installed."},"comment":{"url":"https://api.github.com/repos/Carthage/Carthage/issues/comments/151598450","html_url":"https://github.com/Carthage/Carthage/issues/417#issuecomment-151598450","issue_url":"https://api.github.com/repos/Carthage/Carthage/issues/417","id":151598450,"user":{"login":"kballard","id":714,"avatar_url":"https://avatars.githubusercontent.com/u/714?v=3","gravatar_id":"","url":"https://api.github.com/users/kballard","html_url":"https://github.com/kballard","followers_url":"https://api.github.com/users/kballard/followers","following_url":"https://api.github.com/users/kballard/following{/other_user}","gists_url":"https://api.github.com/users/kballard/gists{/gist_id}","starred_url":"https://api.github.com/users/kballard/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kballard/subscriptions","organizations_url":"https://api.github.com/users/kballard/orgs","repos_url":"https://api.github.com/users/kballard/repos","events_url":"https://api.github.com/users/kballard/events{/privacy}","received_events_url":"https://api.github.com/users/kballard/received_events","type":"User","site_admin":false},"created_at":"2015-10-27T18:21:19Z","updated_at":"2015-10-27T18:21:19Z","body":"In theory, it should be passing a destination requesting to build for a generic simulator (instead of one of the specific installed simulators)."}}