Qt is a cross-platform application framework that is widely used for developing application software with a graphical user interface (GUI) (in which cases Qt is classified as a widget toolkit), and also used for developing non-GUI programs such as command-line tools and consoles for servers. Qt uses standard C++ but makes extensive use of a special code generator (called the Meta Object Compiler, or moc) together with several macros to enrich the language. Qt can also be used in several other programming languages via language bindings. It runs on the major desktop platforms and some of the mobile platforms. It has extensive internationalization support. Non-GUI features include SQL database access, XML parsing, thread management, network support, and a unified cross-platform application programming interface (API) for file handling. Qt is available under a commercial license, GPL v3 and LGPL v2. All editions support many compilers, including the GCC C++ compiler and the Visual Studio suite. Qt is developed by Digia, who owns the Qt trademark, and the Qt Project under open governance, involving individual developers and firms working to advance Qt. Before the launch of the Qt Project, it was produced by Nokia's Qt Development Frameworks division, which came into existence after Nokia's acquisition of the Norwegian company Trolltech, the original producer of Qt. In February 2011, Nokia announced its decision to drop Symbian technologies and base their future smartphones on Microsoft platform instead. One month later, Nokia announced the sale of Qt's commercial licensing and professional services to Digia, with the immediate goal of taking Qt support to Android, iOS and Windows 8 platforms, and to continue focusing on desktop and embedded development, although Nokia was to remain the main development force behind the framework at that time. Site: https://qt-project.org/