OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ubl message

[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]