-
Notifications
You must be signed in to change notification settings - Fork 2
/
INSTALL
63 lines (55 loc) · 3.36 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/*******************************************************************************
* QRESTServer a lean and mean Qt/C++ based REST server *
* *
* Copyright 2018 by Targoman Intelligent Processing Co Pjc.<http://tip.co.ir> *
* *
* *
* QRESTServer is free software: you can redistribute it and/or modify *
* it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE as published by *
* the Free Software Foundation, either version 3 of the License, or *
* (at your option) any later version. *
* *
* QRESTServer is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU AFFERO GENERAL PUBLIC LICENSE for more details. *
* You should have received a copy of the GNU AFFERO GENERAL PUBLIC LICENSE *
* along with QRESTServer. If not, see <http://www.gnu.org/licenses/>. *
* *
*******************************************************************************/
Here is a brief guide on how to build QRESTServer
1 - Unpack: This should give a top-level directory with the subdirectories
listed in README, as well as a few documentation files and a buildAndTest
script.
2- Update dependencies:
* git submodule update --init --recursive
3 - Requirements:
* Linux x86 64bit machine
* g++: v7.3 or above
* GNU make: v4.0 or above
* Following Qt development packages version 5.6 or above:
- Qt5Core
- Qt5Concurrent
- Qt5Network
- Qt5JSON
- Qt5Test
* Following Qt development packages are optional and activated if existent
- Qt5WebSocket
* Following projects are needed and defined as submodules
- TargomanCommon (https://github.com/Targoman/TargomanCommon.git)
- QHttp (https://github.com/Targoman/QHttp.git)
- multipart-parser (https://github.com/FooBarWidget/multipart-parser.git)
* hiredis library is also needed for compiling the library
- run `apt install libhiredis-dev` in ubuntu to install this dependency
4 - run qmake with following options:
* CONFIG+=debug if you want to build a debugging version
* PREFIX=DESIRED_LOCATION if you want to install binaries in a folder other than default paths
5 - All outputs will be stored in 'out' directory at top level. subdirectories will be:
* bin: application and submodule oututs (if any).
* build: Build process object files
* conf: Dictionaries and static configurations off all apps and tools
* include: APIs and essential include files for further development
* lib: Shared objects, dlls and static libraries from base library and its submodules
* unitTest UnitTest binaries
* test Examples and test outputs
* .depsBuilt Empty file created once upon submodules are prepared