You probably got here because you Googled.  I did 😉

As an eclipse user, occasionally you get greeted with error messages which are tricky to resolve.  The error, “Resource ‘X’ is out of sync with file system” made me scratch my head for a little while – as far as I could tell, it wasn’t!

Screenshot of error dialog
As an eclipse user, sooner or later you’ll see this.

There can be a few causes of this:

  • If you edit any workspace file from outside of eclipse, which is part of your project, this can throw the error.
  • The same is true of directories – have you renamed/moved/deleted anything?
  • The cause which threw my error was symbolic links.  Because I had changed the name of a target directory, this was enough to trigger this error dialog, even though the file name of the symlink itself was unchanged!

To prevent this dialog appearing, as far as possible, visit Window > Preferences > General > Workspace and select:

  • Refresh using native hooks or polling
  • Refresh on access
Image of eclipse preferences window
Selecting appropriate preferences can keep your workspace up to date and reduce the chance of errors appearing.

The combination of ensuring tight controls on renaming files and directories, together with automating detection of this as much as possible, will lead to a smoother experience with this great integrated development environment.

This problem has been reported for other systems – Jayway covers 64-bit Ubuntu, which is where I derived most of the info I needed (thanks guys!).

If you are developing Android apps using Eclipse, especially on 64-bit Fedora 16, then you too may have come across the error message:

Failed to get the adb version: Cannot run program "/home/[user]/[path]/android/[sdk]/tools/adb": java.io.IOException: error=2, No such file or directory

I did.

To fix it, you need to install 32-bit compatibility libraries.  On Ubuntu (and probably Debian) you can use the getlibs tools.  For Fedora users, it requires installing a few bits and pieces.  Easily accomplished with this:

su -
yum install libstdc++.i686 ncurses-libs.i686
 compat-libstdc++-33.i686

Yum will pull in the necessary dependencies.

Restart Eclipse and the error should disappear.

/lib/ld-linux.so.2 missing? libXext.so.6 can’t be found?

I recently [at the original time of writing] installed Fedora 11 [x86_64] on a test machine, to see how the development desktop build of my favourite Linux distribution is doing – and it’s very nice indeed.

I tried to install Zend Studio 5.5 and soon came across problems, which I found out related to not having 32-bit versions of Xorg and glibc installed. To remedy this, ensure you follow these steps:

su -c 'yum groupinstall Java'
su -c 'yum install glibc.i686 libXext.i586'

Once installed, I was able to fire up the Zend Development Environment:

/usr/local/Zend/ZendStudio-5.5.1/bin/ZDE

.. and it was running on the native (OpenJDK) 64-bit JAVA runtime! How’s that for progress!