forked from fluxer/katie
-
Notifications
You must be signed in to change notification settings - Fork 0
C++ toolkit derived from the Qt 4.8 framework
License
BSD-3-Clause and 2 other licenses found
Licenses found
BSD-3-Clause
LICENSE.BSD
Unknown
LICENSE.FDL
Unknown
LICENSE.LGPL
leashi/katie
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Katie is continuation of the Qt4 C++ toolkit with the goal to keep it alive, clean it up, fix some bugs and backport some features from Qt5. It is based on the latest Git revision of Qt v4.8. There are several things you should be aware before considering Katie: - some components and tools have been removed: - QMake, Linguist, Assistant, checksdk, macdeployqt, pixeltool, qconfig, qdoc, qev, qvfb, runonphone and other non-essential - Qt3Support, QtWebKit, QtHelp, QtXmlPatterns, QtOpenGL, ActiveQt, Phonon and QtMultimedia - some things have changed: - QMake build system replaced with CMake - zlib, zstd, Jansson, OpenSSL, PCRE, Freetype, ICU, X11, libpng and SQLite are required for building - OpenSSL, D-Bus and CUPS must be linked to during build - QtUiTools is build as shared library by default - moc, uic, rcc, etc. are linked to components - updated bundled Harfbuzz from upstream (not Harfbuzz-NG) - versioned and extended classes have been merged into the base class, e.g. QIconEngineV2 into QIconEngine and QKeyEventEx into QKeyEvent - QGuiPlatformPlugin class is public - updated localizations data from Common Locale Data Repository v39 - SQLite driver uses UTF-8 encoding instead of UTF-16 - default text codec for C-strings is UTF-8 - QTranslator uses gettext for translations - OpenVG is no longer supported graphics output - Blitter is no longer supported painting engine - native graphics system is no more, rasterizer is just as fast as native - QPicture, QPictureIO and plugins for it are no longer supported - QML debugger and inspector have been removed, potentially dangerous - no SIMD, zero performance impact with decent compiler - state machine is no more - removed non-open source DB2, OCI, TDS and InterBase database drivers - removed 3rd party sources that are very common nowdays - dropped non-open source and discontinued platforms support - dropped dnotify filesystem watcher support - dropped Glib2 event dispatcher support - dropped support for a.out format - dropped Motif Drag-And-Drop (DND) support - dropped LPR support - dropped static plugins support - dropped MNG image format support - dropped obscure (24-bit) image formats support - dropped Valgrind support - dropped recursive mutex and lock support - some additions have been made: - JSON document handler - standard directories handler - building with OpenSSL v1.1+ is possible - building with IODBC instead of unixODBC is possible - building with LTO is possible and supported, if the toolchain can handle it - alternative libc implementations support - additional text codecs via ICU converter - Unicode v5.0+ characters and partial scripts support - support for AArch64 architecture - support for PostgreSQL v9.1+ - support for locale aliases - support for generating SHA-256 and SHA-512 hash sums (SHA-2) - support for generating CRC-32 checksums via qChecksum32() function - verification section for plugins build with Clang - faster alternatives to qCompress() and qUncompress() - stack backtrace on assert, crash or warning via execinfo - brief manual pages for all command-line tools - desktop files, Shell profile and dynamic linker/loader config - more reliable qrand(), seeded per thread - improved signal/slot template arguments handling - improved OpenSSL default certificate and certificates directory detection - improved namespaces support and introduced QT_NAMESPACE_COMPAT - improved cross-compilation support - improved POSIX, XSI, SUSv2, etc. requirements build checks - script component relies on PCRE instead of internal copy - tests and benchmarks can be run without prior installation Bugs fixed in Katie, some of which in Qt5 too: QTBUG-23502, QTBUG-37115, QTBUG-15052, QTBUG-23522, QTBUG-6139, QTBUG-26889, QTBUG-21548, QTBUG-6133, QTBUG-18188, QTBUG-36767, QTBUG-35387, QTBUG-37035, QTBUG-28321, QTBUG-21993, QTBUG-26590, QTBUG-2124, QTBUG-20482, QTBUG-41361, QTBUG-40153, QTBUG-35479, QTBUG-1628, QTBUG-42989, QTBUG-34861, QTBUG-46767, QTBUG-25114, QTBUG-24672, QTBUG-23524 (WIP), QTBUG-56088, QTBUG-42189, QTBUG-39285, QTBUG-18173, QTBUG-28968, QTBUG-34336, QTBUG-40974, QTBUG-44286, QTBUG-12564, QTBUG-20028, QTBUG-71967, QTBUG-70956, QTBUG-71446, QTBUG-61307, QTBUG-27287, QTBUG-25143, QTBUG-22833, QTBUG-57399, QTBUG-59159, QTBUG-15773, QTBUG-70506, QTBUG-46054, QTBUG-11223, QTBUG-63108, QTBUG-6932, QTBUG-42365, QTBUG-83817, QTBUG-4341, QTBUG-36933, QTBUG-49113, QTBUG-69920, QTBUG-40015 Unless you use QMake and QDoc porting to Katie or even supporting it along with Qt4 in the same codebase is trivial and requires only minor changes because Katie is mostly source compatible with Qt 4.8.x, compatibility with releases earlier than that is not a goal. Do note that using libraries that are linked to Qt4 from applications linked to Katie will trigger undefined behavior. Should you encounter a problem please report it at https://github.com/fluxer/katie/issues. For more information about changes, how to handle them and general info please visit https://github.com/fluxer/katie/wiki.
About
C++ toolkit derived from the Qt 4.8 framework
Resources
License
BSD-3-Clause and 2 other licenses found
Licenses found
BSD-3-Clause
LICENSE.BSD
Unknown
LICENSE.FDL
Unknown
LICENSE.LGPL
Code of conduct
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- C++ 92.9%
- C 3.5%
- JavaScript 1.5%
- CMake 0.8%
- GAP 0.5%
- Python 0.3%
- Other 0.5%