FAQ

# The XSLT C library for GNOME

## FAQ

Main Menu

- Home
- Introduction
- Documentation
- Reporting bugs and getting help
- How to help
- Downloads
- FAQ
- News
- The xsltproc tool
- DocBook
- The programming API
- Python and bindings
- Library internals
- Writing extensions
- Contributions
- libexslt
- flat page, stylesheet
- API Menu
- ChangeLog

Related links

- Tutorial, Tutorial2
- Man page for xsltproc
- Mail archive
- XML libxml2
- FTP
- Windows binaries
- Solaris binaries
- MacOsX binaries
- Bug Tracker
- lxml Python bindings
- Perl XSLT bindings
- XSLT with PHP
- Apache module
- Pascal bindings
- Xsldbg Debugger

API Indexes

- Alphabetic
- Constructors
- Functions/Types
- Modules
- Symbols

1. Troubles compiling or linking programs using libxslt

   Usually the problem comes from the fact that the compiler doesn't get the right compilation or linking flags. There is a small shell script `xslt-config` which is installed as part of libxslt usual install process which provides those flags. Use

   `xslt-config --cflags`

   to get the compilation flags and

   `xslt-config --libs`

   to get the linker flags. Usually this is done directly from the Makefile as:

   `CFLAGS=`xslt-config --cflags``

   `LIBS=`xslt-config --libs``

   Note also that if you use the EXSLT extensions from the program then you should prepend `-lexslt` to the LIBS options

2. passing parameters on the xsltproc command line doesn't work

   xsltproc --param test alpha foo.xsl foo.xml

   the param does not get passed and ends up as ""

   In a nutshell do a double escaping at the shell prompt:

   xsltproc --param test "'alpha'" foo.xsl foo.xml

   i.e. the string value is surrounded by " and ' then terminated by ' and ". Libxslt interpret the parameter values as XPath expressions, so the string ->`alpha`<- is intepreted as the node set matching this string. You really want ->`'alpha'`<- to be passed to the processor. And to allow this you need to escape the quotes at the shell level using ->`"'alpha'"`<- .

   or use

   xsltproc --stringparam test alpha foo.xsl foo.xml

3. Is there C++ bindings ?

   Yes for example xmlwrapp , see the related pages about bindings

Daniel Veillard