Blame view

1

JanKusanagi committed
2
 Dianara - A Pump.io client
JanKusanagi committed
3
 Copyright 2012-2017  JanKusanagi JRR <jancoding@gmx.com>
4

JanKusanagi committed
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
===============================================================================

   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 2 of the License, or
   (at your option) any later version.

   This program 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 General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the
   Free Software Foundation, Inc.,
   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA.

   Or visit http://www.gnu.org/licenses/

===============================================================================
25

JanKusanagi committed
26

27 28
These are some basic instructions on how to build Dianara from source, in case
you don't have precompiled packages available for your operating system.
29
See https://jancoding.wordpress.com/dianara for info on package availability.
30 31


JanKusanagi committed
32

JanKusanagi committed
33 34
General runtime dependencies (check carefully!)
===============================================================================
35

36 37
 - Qt 5.6 or later
 - QOAuth 1.0.x, built with Qt 5
38
 - Libmagic
39 40 41
 - OpenSSL plugin for QCA (qca2-plugin-openssl, libqca2-plugin-ossl, or similar)
   In some cases, the QCA package includes the plugins directly.
    *** Dianara will _crash_ if you don't have this!
42 43


JanKusanagi committed
44 45 46

Dependencies for building
===============================================================================
47

48 49
You'll need qmake and the qt-devel (>= 5.6, including QtNetwork and QtDBUS
modules, if they are separate), qoauth-devel and libmagic-devel packages.
JanKusanagi committed
50 51
Qmake might be included in the Qt development packages, or it might be a
separate package.
52

53

JanKusanagi committed
54 55
These are the names of the packages for the build dependencies
in some GNU/Linux distributions:
JanKusanagi committed
56

JanKusanagi committed
57
  - Mageia (probably in Mandriva and ROSA, too):
58
      libqt5base5-devel, libqoauth-qt5-devel and libmagic-devel.
59 60 61 62

      ** Note: In x86_64 arch, "lib" packages start with "lib64", such as
               lib64qt5base5-devel.

63
    > Build tools: gcc-c++
64

65 66

  - Debian (probably in any of its derivatives, too):
67
      qt5-default, libqoauth-dev (>=2.0.0) and libmagic-dev.
68

JanKusanagi committed
69
    > Build tools: build-essential, g++
70 71


JanKusanagi committed
72
  - Fedora:
73
      qt5-qtbase-devel, qoauth-devel, and file-devel.
74

75
    > Build tools: gcc-c++
JanKusanagi committed
76

77

78
  - openSUSE:
79
      libqt5-qtbase-devel, qoauth-devel and file-devel (has libmagic).
80

81

JanKusanagi committed
82
  - Archlinux (runtime dependencies include build-time dependencies):
83
      qt5-base, qoauth, file (this one includes libmagic).
84

85

86

87 88
You might also need to install qt5-qmake, if your distribution does not include
it with the Qt development package.
89 90 91



JanKusanagi committed
92 93
Build process
===============================================================================
94

JanKusanagi committed
95
From Dianara's main directory, where Dianara.pro is located, execute:
96

JanKusanagi committed
97 98
        mkdir build               # Create a clean directory for the build
        cd build                  # Go into it
99
        qmake ..                  # Ask Qmake to generate a Makefile[*]
JanKusanagi committed
100
        make                      # Run Make to compile the project
101

102
[*]you might need to use the command 'qmake-qt5' instead!
103 104 105 106

That should do it!


JanKusanagi committed
107 108
There is an installation target if you wish to use 'make install', but you can
just run the resulting "dianara" binary without installation.
109 110
The language files will be embedded into the binary upon compilation,
so there's no need to keep them afterwards.
111 112 113



JanKusanagi committed
114 115
Dianara is built on and for GNU/linux, but it will probably work under other
systems, as long as they are supported by Qt, and have ports of the necessary
116
dependencies. Building under FreeBSD has been known to work.
JanKusanagi committed
117

JanKusanagi committed
118

JanKusanagi committed
119

120
===============================================================================
121

122

123
Visit https://jancoding.wordpress.com/dianara for more information.
JanKusanagi committed
124

JanKusanagi committed
125
Get the latest development source from https://gitlab.com/dianara/dianara-dev