[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: ANN: xmlroff 0.2.7 installation instructions
Dear all, on my previous status update about xmlroff, I mentioned there was a new 0.2.7 version and I promised some details about how to install it, especially for those with access to a personal linux system but who don't usually have to deal with compilation of alpha/beta C software in linux. The attached document is a mini-howto explainning the installation. I hope it is helpful. Please note that the Crane .fo's will not display correctly with this version of xmlroff. I look forward to change that by contributing implementations of the missing XSL-FO properties to xmlroff. If you have any questions, please let me know. All the best, F.
888 .d888 .d888 888 d88P" d88P" 888 888 888 888 88888888b.d88b. 888888d888 .d88b. 888888888888 `Y8bd8P'888 "888 "88b888888P" d88""88b888 888 X88K 888 888 888888888 888 888888 888 .d8""8b.888 888 888888888 Y88..88P888 888 888 888888 888 888888888 "Y88P" 888 888 0.2.7 Begginner's Installation Notes MINI-HOWTO ---------------------------------------------------------- Fabio Arciniegas fabio@postgraphy.com Contents -------- . Introduction . Overview of the process . Installing dependencies . Building and installing pangopdf . Building and installing xmlroff . Common Trouble . Testing Introduction ------------ xmlroff is an open source XSL formatter. xmlroff has the ability of rendering XSL-FO as PDF documents and therefore can be particularly interesting to a variety of individuals and projects (e.g. UBL enthusiasts can render XSL-FO transformations of their documents to PDF). xmlroff is also an alpha technology and as such it's building/installation can be daunting. The goal of this document is to provide a concise but useful guide to the compilation and installation of xmlroff for beginners on a typical modern linux system (such as Debian 9), paying especial attention to details which would otherwise rely on knowledge of C development under linux. Experts in the compilation of alpha/beta level software on linux platforms will probably want to skip this document. DISCLAIMER ---------- I realize the information on this document is pretty unpolished and makes lots of assumptions about your system. I hope such assumptions are correct for most modern cases (the main target was individual users in linux platforms such as Debian 9), and hope the net effect of this document is positive, but I don't guarantee it in any way. This document does not replace any official documentation, and is provided WITHOUT ANY WARRANTY OR PROMISE EXPLICIT OR IMPLICIT. Overview of the Process ----------------------- The process is ideally very simple: 1. download pangopdf and xmlroff 2. Install the dependencies 3. on the extraction directory of pangopdf, run ./configure 4. run make 5. run make install 6. do 3,4,5 for xmlroff Instead of providing a generalized version of those steps, assuming you know how to build C programs in linux (that is the goal general install notes are for), I will assume that you have a typical modern workstation configuration and don't know much about building software from scratch on linux. Download pangopdf and xmlroff ----------------------------- Get the pangopdf source from: http://pangopdf.sourceforge.net/ Get the xmlroff source from: http://xmlroff.sourceforge.net/ on both sites, you will find a standard page with a download link that goes to sourceforge. In sourceforge look for the following links: For pangopdf: pangopdf-1.2.3.6.tar.gz http://prdownloads.sourceforge.net/pangopdf/pangopdf-1.2.3.6.tar.gz?download For xmlroff: xmlroff-0.2.7.tar.gz http://prdownloads.sourceforge.net/xmlroff/xmlroff-0.2.7.tar.gz?download For xmlroff you will find other packages in the same page (e.g. examples of how to use xmlroff as a library), don't concern yourself with them just now, the goal is to get xmlroff running as a command line successfully. Installing dependencies ----------------------- xmlroff depends on a number of packages: libxml2, libxslt, GLib and GObject. The xmlroff site contains particular versions needed for each package and links to their particular sites. If you go to each site you will find source versions of each package. I recommend you DON'T use this, instead, use your package manager utility (most systems nowadays have KPackage installed as part of the standard KDE environment) to install the most recent packaged versions of each software. When you are installing the packages, you will notice that next to some of them, there are similar packages with the -dev suffix. You will want to install those too, they include header files you need to compile against later. In particular you want to select from the package list libgnome2-dev and libxslt-dev for installation. Building pangopdf ----------------------- Once you have extracted pangopdf using tar zxvf pangopdf-1.2.3.6.tar.gz go to the pangopdf-1.2.3.6 directory and type the following (although not strictly necessary for the next step I find it convenient to switch to root at this point) ./configure --enable-gp=yes --enable-pdflib=no this will check your system for dependencies and get ready to build xmlroff WITH THE FREE GNOMEPRINT BACKEND. if you do not include the extra parameters to ./configure, you will require PDFLib (www.pdflib.com). after ./configure is done, symple type make to build the pangopdf libraries. Finally, to install the libraries in /usr/local/lib/pangopdf type: make install Building xmlroff ---------------- Now, untar xmlroff : tar zxvf xmlroff-0.2.7.tar.gz before you go to the produced xmlroff-0.2.7 directory and do the same you did for pangopdf, you must know a little detail about dependencies. The way ./configure checks for dependencies is by using the utility pkg-config. pkg-config checks the version of installed libraries by reading ".pc" files usually stored on /usr/lib/pkgconfig. When you built and installed pangopdf you created corresponding .pc files for it but they were installed on /usr/local/lib/pkconfig If you just try to configure xmlroff, pkgconfig will miss the necessary pc files. You need to add /usr/local/lib/pkconfig to your PKG_CONFIG_PATH environment variable (for bash): export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH likewise, make sure the libraries themselves will be found by including /usr/local/lib/pangopdf to your LD_LIBRARY_PATH : export LD_LIBRARY_PATH=/usr/local/lib/pangopdf:$LD_LIBRARY_PATH Now you should be ready. Inside the xmlroff directory do the same three: ./configure --enable-gp=yes --enable-pdflib=no make make install COMMON TROUBLES ---------------- The most common problem I've seen with this process is "undefined references" when making xmlroff. IFF you have successfully configured and build pangopdf and successfully configured xmlroff, the problem behind the undefined references is that you are using the incorrect version of libpango-1.0.so The quickest solution to this problem is replacing the libpango-1.0.so you have in /usr/lib with /usr/local/lib/pangopdf/libpango-1.0.so : TESTING ------- xmlroff xmlroff.fo ---------------------------------------------------------------------- $Id$
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]