-
Notifications
You must be signed in to change notification settings - Fork 6
Building, installing and using
Ivailo Monev edited this page Apr 24, 2017
·
255 revisions
The following software is required to build the project:
- Git
- CMake
- C++ compiler which supports C++11, GCC and CLang are the only compilers supported right now
- Platform dependent threads implementation
- zlib
- OpenSSL*
The following software is recommended to build the project:
- Python
- Standard C library specific Network Information Service (NIS) implementation
- libpng
- libjpeg-turbo*
- libtiff
- libmng
- nas
- iconv
- CUPS
- Freetype
- Fontconfig
- ICU
- glib
- DBus
- GTK (v2)
- GConf (v2)
- UnixODBC*
- PostgreSQL
- MySQL*
- Sqlite
- Resolv (part of the standard C library)
- NSL (part of the standard C library)
*The software mentioned has know alternative(s) which is also supported, such as LibreSSL which is almost a drop-in replacement for OpenSSL or MariaDB as an alternative to MySQL.
- Learn how to take advantage of the flexible build system
- If size matters build with
MinSizeRelasCMAKE_BUILD_TYPE, LTO and no exceptions - If time and disk space for building matters build with
KATIE_ALLINONEset toON - Create packages via
cpack,make packageor a native package via the provided package files for various distributions
git clone --depth=1 git://github.com/fluxer/katie
cd katie
ln -sv package/debian .
dpkg-buildpackage -nc -b
sudo dpkg -i ../katie-git*.deb
git clone --depth=1 git://github.com/fluxer/katie
cd katie/package/archlinux
makepkg -s
sudo pacman -U katie-git*.pkg.tar.xz
other UNIX-like system
git clone --depth=1 git://github.com/fluxer/katie
mkdir -pv katie/build
cd katie/build
cmake ../ -DCMAKE_INSTALL_PREFIX=/usr -DKATIE_LDCONF_FULL=/etc/ld.so.conf.d -DKATIE_PROFILE_FULL=/etc/profile.d
make
sudo make install
- Run
sudo ldconfigso that the libraries paths are cached, systems using musl libc or uclibc may not require this step - Login and logout so that the project specific Shell profile file has effect
- Watch out for tools/scripts that alter environmental variables (e.g. sudo) such as
LD_LIBRARY_PATH,PKG_CONFIG_PATH:
echo $LD_LIBRARY_PATH
echo $PKG_CONFIG_PATH
- Verify the installation:
echo '#include <QDebug>
int main(int argc, char *argv[])
{
qDebug() << "<insert kool joke here>";
return 0;
}' > kk.cpp
g++ kk.cpp $(pkg-config --cflags --libs KtCore) -std=c++11 -o kk
./kk
- Report any issues and suggestions you may have
Katie is part of the Katana Desktop Environment project.