Need help with FBReader?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

480 Stars 160 Forks 3.4K Commits 259 Opened issues


Official FBReader C++ project repository

Services available


Need anything else?

Contributors list

# 39,101
2879 commits
# 152,545
109 commits
# 47,888
4 commits
# 71,317
1 commit

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.

  1. 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 ** 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 ( -- 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

  1. How to configure.

Before building FBReader, you should check (and maybe edit) 2 files: ** makefiles/ In this file you should define 3 variables: TARGETARCH -- target platform for building FBReader UITYPE -- 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.

  1. How to build.

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

  1. 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.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.