Create web and desktop applications using an object oriented language.
Java 2 Runtime Environment gives you all the necessary to Execute JVM.
Cmake manages the build process, in a compiler independent fashion in an OS