No, for compilation it's connected to device with android 4.2.2
but, I was not clear maybe, error above is generated during compilation ..
In SDK manager I have android completely 4.2.2 (API 17) installed, parts of API14 and API 8 (android 8). Also support library, repository library, Google play services and web driver ..
After "Tools > Configure Paths" set to "android-17" (previously was -8) I can compile without error.
And default "Theme.Holo" was giving me black menus, and modifications "Theme.Holo.Light" gives mi wished white menus.
One more verification. If I use this in manifest
<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="19"/>
and compile with "android-17", then still older devices with android 10 (example) can run app ?
I believe if you wish to target V19 and use features available in V19 then you should compile with V19. I generally always compile with the latest. They backwards compatible. So yes, if you compile with V19 (or 17) older devices will run the app; but if you use features that are only available in higher versions and don't use any version checking, you could get errors.
An example in your instance would be the Holo theme. If you state the application to use Holo or Holo Light and then run the app on a device with Gingerbread installed, you will get an error. As the Holo theme simply doesn't exist.