GitLab's annual major release is around the corner, along with a lot of new and exciting features, there will be a few breaking changes, learn more here.

INSTALL 4.27 KB
Newer Older
1

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

JanKusanagi's avatar
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's avatar
JanKusanagi committed
26

JanKusanagi's avatar
JanKusanagi committed
27 28 29
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.
See http://jancoding.wordpress.com/dianara for info on package availability.
30 31


JanKusanagi's avatar
JanKusanagi committed
32

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

36
 - Qt 4.8.x  (You _can_ build with Qt 5.x, but it will probably crash)
JanKusanagi's avatar
JanKusanagi committed
37
 - QJSON 0.7.x or 0.8.x
38
 - QOAuth 1.0.x
39
 - Libmagic
40
 - QCA and its openSSL plugin (qca2-plugin-openssl, libqca2-plugin-ossl, or similar)
JanKusanagi's avatar
JanKusanagi committed
41
   (Dianara will _crash_ if you don't have this!)
42 43


JanKusanagi's avatar
JanKusanagi committed
44 45 46

Dependencies for building
===============================================================================
JanKusanagi's avatar
JanKusanagi committed
47

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

54

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

JanKusanagi's avatar
JanKusanagi committed
58 59
  - Debian (and probably in its derivatives too):
      libqt4-dev, libqjson-dev, libqoauth-dev and libmagic-dev.
JanKusanagi's avatar
JanKusanagi committed
60
    > Build tools: build-essentials, g++
JanKusanagi's avatar
JanKusanagi committed
61

JanKusanagi's avatar
JanKusanagi committed
62
  - Mageia (probably in Mandriva and ROSA, too):
63
      i586: libqt4-devel, libqjson-devel, libqoauth-devel and libmagic-devel.
JanKusanagi's avatar
JanKusanagi committed
64 65
      x86_64: lib64qt4-devel, lib64qjson-devel, lib64qoauth-devel and
              lib64magic-devel.
66

JanKusanagi's avatar
JanKusanagi committed
67 68
  - Fedora:
      qt-devel, qjson-devel, qoauth-devel, and file-devel.
69
    > Build tools: gcc-c++
JanKusanagi's avatar
JanKusanagi committed
70

71
  - openSUSE:
JanKusanagi's avatar
JanKusanagi committed
72 73
      libqt4-devel, libqjson-devel, qoauth-devel and file-devel (has libmagic).

JanKusanagi's avatar
JanKusanagi committed
74
  - Archlinux (runtime dependencies include build-time dependencies):
JanKusanagi's avatar
JanKusanagi committed
75
      qt4, qjson, qoauth, file (yes, this one includes libmagic).
76

77 78

You might also need to install qt4-qmake, if your distribution does not include
JanKusanagi's avatar
JanKusanagi committed
79 80 81 82
it with the Qt development package.



JanKusanagi's avatar
JanKusanagi committed
83 84
Build process
===============================================================================
JanKusanagi's avatar
JanKusanagi committed
85

JanKusanagi's avatar
JanKusanagi committed
86
From Dianara's main directory, where Dianara.pro is located, execute:
JanKusanagi's avatar
JanKusanagi committed
87

JanKusanagi's avatar
JanKusanagi committed
88 89
        mkdir build               # Create a clean directory for the build
        cd build                  # Go into it
JanKusanagi's avatar
JanKusanagi committed
90
        qmake ..                  # Ask Qmake to generate a Makefile[*]
JanKusanagi's avatar
JanKusanagi committed
91
        make                      # Run Make to compile the project
JanKusanagi's avatar
JanKusanagi committed
92

JanKusanagi's avatar
JanKusanagi committed
93
[*]if you have the command 'qmake-qt4' available, use that instead of 'qmake'!
JanKusanagi's avatar
JanKusanagi committed
94 95 96 97

That should do it!


JanKusanagi's avatar
JanKusanagi committed
98 99
There is an installation target if you wish to use 'make install', but you can
just run the resulting "dianara" binary without installation.
JanKusanagi's avatar
JanKusanagi committed
100 101
The language files will be embedded into the binary upon compilation,
so there's no need to keep them afterwards.
102 103 104



JanKusanagi's avatar
JanKusanagi committed
105 106 107
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
dependencies.
JanKusanagi's avatar
JanKusanagi committed
108

JanKusanagi's avatar
JanKusanagi committed
109 110
Building with Qt 5.x should work, but it's unsupported at the moment, due
to crashes on startup.
JanKusanagi's avatar
JanKusanagi committed
111

112 113 114
If your desktop environment is Plasma 5 (or maybe other modern environments),
you will need the SNI Qt plugin in order for the system tray icon to appear.

JanKusanagi's avatar
JanKusanagi committed
115

JanKusanagi's avatar
JanKusanagi committed
116
===============================================================================
117

JanKusanagi's avatar
JanKusanagi committed
118
Visit http://jancoding.wordpress.com/dianara for more information.
JanKusanagi's avatar
JanKusanagi committed
119

JanKusanagi's avatar
JanKusanagi committed
120
Get the latest development source from https://gitlab.com/dianara/dianara-dev