ali@5: bookloupe ali@5: ========= ali@0: ali@0: General installation instructions can be found in INSTALL. The following ali@0: aim to give a quick overview and some help for specific systems. Documentation ali@5: for bookloupe itself can be found in doc/bookloupe.txt and for the test ali@5: framework in doc/loupe-test.txt. ali@0: ali@0: Linux ali@0: ----- ali@0: ali@0: You should be able to use the standard: ali@0: ali@0: % ./configure ali@0: % make ali@0: % sudo make install ali@0: ali@0: If you get an error about no package 'glib-2.0' found, then you need to ali@0: install the development package for glib2. Under Fedora, RHEL and friends ali@0: that would be: ali@0: ali@0: % sudo yum install gcc pkgconfig glib2-devel ali@0: ali@0: Under Debian, Ubuntu and friends that would be: ali@0: ali@0: % sudo apt-get install gcc pkgconfig glib2-devel ali@0: ali@0: Microsoft Windows ali@0: ----------------- ali@0: ali@19: It should be possible to use either MSYS (http://www.mingw.org/wiki/MSYS) ali@19: or cygwin (http://www.cygwin.com/) to build on a Windows machine. You'll ali@19: need a copy of the development package for glib and its dependencies ali@19: from http://www.gtk.org/download/win32.php. ali@0: ali@0: It's much easier to build using a cross-compiler from Linux, if you have ali@0: access to such a system. Under Fedora, RHEL and friends you can do this ali@0: with: ali@0: ali@0: % sudo yum install mingw32-gcc pkgconfig mingw32-glib2-static \ ali@0: mingw32-gettext-static mingw32-iconv-static ali@0: % ./configure --host=i686-w64-mingw32 --disable-shared \ ali@5: --bindir=/bookloupe --datadir=/ ali@0: % make ali@0: % mkdir build ali@0: % make install DESTDIR=`pwd`/build ali@0: ali@5: The contents of the build/bookloupe directory can then be copied to a ali@0: Microsoft Windows machine. ali@0: ali@0: Depending on the version of mingw32-gcc you use, you may need to specify a ali@0: different host type. If you're not sure look and see what the cross-compiler ali@0: is called (eg., i686-pc-mingw32-gcc) and use the prefix as the host type. ali@0: ali@0: Mac ali@0: --- ali@0: ali@10: The least intrusive means to build on a Mac is to use Homebrew: ali@0: ali@10: http://mxcl.github.com/homebrew/ ali@0: ali@10: Install Homebrew according to its instructions. ali@10: ali@10: If you are building bookloupe for your own use, you can use dynamic linking ali@10: like this: ali@10: ali@10: $ brew install glib ali@10: ali@10: and then install bookloupe using: ali@10: ali@10: $ ./configure ali@10: $ make ali@10: $ make install ali@10: ali@10: If you want to build bookloupe for other people to use, you will probably ali@10: want to link staticly. To do this you need to edit the formula for glib ali@10: and each of its dependencies (gettext and libffi) using something like: ali@10: ali@10: $ brew edit gettext ali@10: ali@10: Each time find the args statement which includes --prefix and insert ali@10: --disable-shared,for example change: ali@10: ali@10: args = ["--disable-dependency-tracking", "--disable-rebuilds", ali@10: "--prefix=#{prefix}", ali@10: "--disable-dtrace"] ali@10: ali@10: to ali@10: ali@10: args = ["--disable-dependency-tracking", "--disable-rebuilds", ali@10: "--disable-shared", ali@10: "--prefix=#{prefix}", ali@10: "--disable-dtrace"] ali@10: ali@10: and then ali@10: ali@10: $ brew install glib ali@10: ali@10: before installing bookloupe as normal, but with the extra flag to configure: ali@10: ali@10: $ ./configure --disable-shared ali@10: $ make ali@10: $ make install ali@10: ali@10: Note that if you have previously used dynamic linking this may not work. ali@10: (Homebrew doesn't seem to create .la files in a form that libtool can use ali@10: when it is asked to prefer static libraries to dynamic ones.) Removing the ali@10: dynamic libraries first will solve this problem. ali@10: ali@10: It may also be possible to use fink or macports.