I've been unable to install the autotest-fsevent gem after updating to Xcode 4.3 (removed old versions of Xcode). Command line tools were installed via Preferences > Downloads > Components tab.
osx 10.7.3, rvm 1.10.2, ruby 1.9.3-rc1, bundler 1.0.22
$ bundle
Installing autotest-fsevent (0.2.7) with native extensions
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/doc/.rvm/rubies/ruby-1.9.3-rc1/bin/ruby extconf.rb
extconf.rb:36:in `<main>': Xcode not found - see README for assistance (RuntimeError)
Gem files will remain installed in /Users/doc/.rvm/gems/ruby-1.9.3-rc1@global/gems/autotest-fsevent-0.2.7 for inspection.
Results logged to /Users/doc/.rvm/gems/ruby-1.9.3-rc1@global/gems/autotest-fsevent-0.2.7/ext/fsevent/gem_make.out
An error occured while installing autotest-fsevent (0.2.7), and Bundler cannot continue.
Make sure that `gem install autotest-fsevent -v '0.2.7'` succeeds before bundling.
The README simply indicates Xcode is required.
I appear to have the correct Xcode.app selected:
$ xcode-select -print-path
/Applications/Xcode.app/Contents/Developer
Anyone else have this problem? Any ideas how to work around this?
It turns out the Xcode path is hard-coded in the gem file:
...
elsif File.exists?('/Developer/Applications/Xcode.app')
`CFLAGS='-isysroot /Developer/SDKs/MacOSX#{SDK_VERSION}.sdk -mmacosx-version-min=#{SDK_VERSION}' /usr/bin/gcc -framework CoreServices -o "#{GEM_ROOT}/bin/fsevent_sleep" fsevent_sleep.c`
raise "\e[1;31mCompilation of fsevent_sleep binary failed - see README for assistance\e[0m" unless File.executable?("#{GEM_ROOT}/bin/fsevent_sleep")
...
Xcode 4.3 is now installed as an application in /Applications. Another github user (fxposter) found the same problem and issued a pull request a few hours before mine. The proposed changes have been merged into the gem and v0.2.8 has been released.