Why is Exodus dependent on Boost and not Qt?

From NEOSYS Dev Wiki
Jump to navigationJump to search

Why is Exodus dependent on Boost and not Qt

Exodus uses the Boost libraries because they offer the least restrictive and most standard C++ environment while still promising excellent portability.

Exodus can be both developed and used on almost any platform including the Qt creator cross platform C++ IDE. It is not necessary that Exodus uses Qt in order that Exodus can be used in the Qt environment.

There is a frozen Qt version of Exodus in the subversion tree but it was decided that what Qt offers Exodus can be obtained better from Boost.

Unicode: Exodus does proper Unicode without requiring the ICU library just like Qt does – by calling native operating system functions for the key collation and character conversions.

Standards: Implementing Exodus with the standard C++ wide character string instead of the qt string should make Exodus more portable in the long term.

Portability: It is very difficult to forecast where Exodus needs to go in the future but we can look at some interesting platforms coming up. It appears that Boost can be built on Nokia and Windows CE sufficient for Exodus. Nokia is delivering the boost libraries ready-made on its latest s60 version.

Flexibility: Boost provides what Exodus needs with almost no restrictions. QtCore likes to exist as a separate runtime library/dll. Boost is just as happy being statically linked into Exodus. This means that Exodus can itself be statically linked into programs and therefore totally disappear into the background.

General comparison: Qt’s unique appeal is its portable UI and its cross platform development tools. Boost is more the ground zero of developing C++ standards and is therefore more broadly (not numerically) important than Qt which is can be viewed as just a very successful tool rooted in the Linux desktop.