diff options
author | Aqua-sama <aqua@iserlohn-fortress.net> | 2017-12-21 17:52:56 +0100 |
---|---|---|
committer | Aqua-sama <aqua@iserlohn-fortress.net> | 2017-12-21 17:52:56 +0100 |
commit | cf06dcb0650f603ae3d634634d81f9ec78d21937 (patch) | |
tree | 07b6aff6426ba091cd5b1a90832527d651101ac6 /docs/manual/Building.md | |
parent | Added Search Box (diff) | |
download | smolbote-cf06dcb0650f603ae3d634634d81f9ec78d21937.tar.xz |
Edited documentation
- Search highlighting is removed when you close the search box
- Fixed PKGBUILD not working
- PKGBUILD can now pick compiler and optimization
Diffstat (limited to 'docs/manual/Building.md')
-rw-r--r-- | docs/manual/Building.md | 60 |
1 files changed, 44 insertions, 16 deletions
diff --git a/docs/manual/Building.md b/docs/manual/Building.md index aa5c1f4..56a6646 100644 --- a/docs/manual/Building.md +++ b/docs/manual/Building.md @@ -1,26 +1,54 @@ # Building -### Notes (TODO: move) -* Windows: MSVC compiler is required because of QtWebEngine dependency -* Windows: Passing the -v or -h parameters creates a dialog box instead of -writing the output to stdout. This is Qt behaviour. -* Windows: Use windeployqt.exe to collect the libraries +## Dependencies + +### Libraries +- [Qt](https://www.qt.io/) + - at least 5.9 (codebase should largely work with Qt 5.7) + - core, widgets + - webengine, webenginewidgets +- [libconfig](https://hyperrealm.github.io/libconfig/) + +### Tools +* A working compiler + - gcc or clang on Linux + - msvc on Windows due to QtWebEngine +* qbs + - minimal version 1.8.0 + +## Compiling + +### Create qbs configuration +Before you can build anything with qbs, you need to set up the compiler +toolchain. + ``` -QT_DIR\QT_VER\msvc2015_64\windeployqt.exe build-PROFILE\release\qtbrowser.exe +qbs setup-toolchains --detect +qbs setup-qt /usr/bin/qmake-qt5 qt5 ``` -* grsecurity: You may need to exception qbs. -An optional system proxy should be picked up automatically. However, for proxies -that require a username or password, you need to connect to -QWebEnginePage::proxyAuthenticationRequired. +### Compiling +``` +mkdir ../build +qbs build -d ../build profile:qt5 release +``` -Qt WebEngine Widgets uses the Qt Quick Scene Graph to compose the page. -Therefore, OpenGL support is required. -And that's also why QML is a dependancy. +## Packaging -To use clang with QtCreator, you need to change the compiler in -Build & Run ยป Kits, not the qbs profile. +### Source Tarball +``` +# Get source code from the repository +git archive --format=tar HEAD > head.tar +# Compress with lzip +lzip -9 --force --output=head.tar.lz head.tar +# Generate checksum +sha512sum --binary head.tar.lz > head.tar.lz.sha512 +``` +### makepkg +A PKGBUILD is provided in linux/makepkg/PKGBUILD. +## Troubleshooting -[1]: https://doc.qt.io/qbs/index.html +### Cannot link libconfig +You don't have pkg-config installed. |