E-book reader based on FBReader
Find a file
Slava Monich cd357843cb Squashed 'fbreader/fbreader/' content from commit 7abc80d
git-subtree-dir: fbreader/fbreader
git-subtree-split: 7abc80d12fab06b05ea1fe68a0e73ea5e9486463
2015-05-26 23:59:24 +03:00
atom-tests Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
distributions Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
docs Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
fbreader Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
libs Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
makefiles Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
third-party/liblinebreak/debian Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
tools Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
trash Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
zlibrary Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
.gitignore Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
build_packages.sh Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
ChangeLog Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
CHANGES-0.11.0 Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
CHANGES-0.11.0-RUSSIAN Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
Makefile Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
MISSED-ACTION-CODES Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
README.build Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
ShucangBugs Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
TODO.fileChooser Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
TODO.libraryView Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
TODO.mac Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
TODO.network Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
TODO.tags Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
ToFix Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
WhatIsNew.0.11.3 Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00
WhatIsNew.0.12.5 Squashed 'fbreader/fbreader/' content from commit 7abc80d 2015-05-26 23:59:24 +03:00

This is a very short description of FBReader build procedure.

1. Compiler.

All version of FBReader are configured for building on linux desktop
computer. You need gcc compiler for building desktop version or cross
gcc compiler for building package for another platform.

2. Libraries.

FBReader requires
  ** expat -- library for XML parsing. AFAIK, all popular destributions
     includes package with name like 'expat-dev' or 'libexpat-dev'.
     If you cannot find expat in your distribution, please visit
     http://expat.sourceforge.net
  ** libz and libbz2 -- libraries for zip and bzip2 (de)compression
  ** UI library -- this depends on your target platform. For desktop,
       Qt library, version 3.* or 4.*
     OR
       GTK+ library, version >= 2.4 
     should be installed
  ** liblinebreak (http://vimgadgets.cvs.sourceforge.net/vimgadgets/common/tools/linebreak/) -- library for line breaking in a Unicode sequence
  ** libfribidi -- for bidirectional text support
  ** lincurl, version >= 7.17 -- for network libraries integration
	** libsqlite3
  ** for win32 version, we use also libpng, libungif, libjpeg and libtiff

3. How to configure.

Before building FBReader, you should check (and maybe edit) 2 files:
  ** makefiles/target.mk
     In this file you should define 3 variables:
       TARGET_ARCH -- target platform for building FBReader
       UI_TYPE -- UI library
       TARGET_STATUS -- "release", "debug" or "profile". "release" is
         reasonable choice for almost all users.

     Possible pairs for TARGET_ARCH + UI_TYPE are:
        TARGET_ARCH = desktop               UI_TYPE = gtk
        TARGET_ARCH = desktop               UI_TYPE = qt
        TARGET_ARCH = desktop               UI_TYPE = qt4
        TARGET_ARCH = pepperpad3            UI_TYPE = gtk
        TARGET_ARCH = zaurus                UI_TYPE = qtopia-240x320
        TARGET_ARCH = zaurus                UI_TYPE = qtopia-640x480
        TARGET_ARCH = openzaurus            UI_TYPE = opie
        TARGET_ARCH = openzaurus            UI_TYPE = gpe
        TARGET_ARCH = pdaxrom               UI_TYPE = gtk
        TARGET_ARCH = pdaxrom               UI_TYPE = qt
        TARGET_ARCH = opensimpad-0.9.0      UI_TYPE = opie
        TARGET_ARCH = maemo                 UI_TYPE = maemo2
        TARGET_ARCH = maemo                 UI_TYPE = maemo4
        TARGET_ARCH = pma400                UI_TYPE = qtopia
        TARGET_ARCH = moto                  UI_TYPE = ezx
        TARGET_ARCH = win32                 UI_TYPE = win32
        TARGET_ARCH = macosx                UI_TYPE = cocoa

  ** makefiles/arch/$(TARGET_ARCH).mk
     This file defines compiler name and location, headers and libraries
     locations, compilation flags, installation path (for desktop), etc.

4. How to build.

Just type 'make' in FBReader root directory. (FBReader root directory ==
directory containing this file.)

5. How to install.

If you want to install FBReader on your desktop computer, just run 'make install'
as root in FBReader root directory.

If you want to create package for another platform, run 'make packages' in
FBReader root directory.