Puppy Linux Blog Post:

How to make Saxon/C v1.1.0 into a PHP extension for PHP 5.6.13 in Lucid Puppy Linux 5.2.8
1/29/2018

Post Below
1/29/2018 - How to make Saxon/C v1.1.0 into a PHP extension for PHP 5.6.13 in Lucid Puppy Linux 5.2.8 (Puppy Linux)

    Hide/Show:


   ▲ Top  ▼ Bottom  △ TOC
How to make Saxon/C v1.1.0 into a PHP extension for PHP 5.6.13 in Lucid Puppy Linux 5.2.8
Monday, January 29th, 2018
23:10:10 GMT

Puppy Linux

Today I found out Saxon/C v1.1.0 was released Sept. 27, 2017.

In it, "APIs are available to run XSLT 3.0, XQuery 3.1, XPath 3.1 and Schema Validation from C/C++ or PHP applications."


Here's an article about various exciting new improvements in XSLT 3.0:

Why You Should Be Using XSLT 3.0
(Feb. 14, 2017, from XML.com)


The ability to easily convert between JSON and XML, making it possible to transform JSON using XSLT, is so exciting that even I (who am often reluctant to switch to newer versions of software) was happy to upgrade to Saxon/C v1.1.0.

(Addition, Feb. 17, 2018, 4:00 AM EST. Today, I figured out I have to go back to Saxon/C v1.0.2 because I can't get Schematron to work with Saxon/C v1.1.0. I found the explanation for that here.)


Fortunately, the process of making Saxon/C v1.1.0 into a PHP extension was almost the same as it was for Saxon/C v1.0.2.

So, for most of the details, see my previous blog post:

How to make Saxon/C v1.0.2 into a PHP extension for PHP 5.6.13 in Lucid Puppy Linux 5.2.8


The 2 differences were:

  1. I copied the contents of the PHP5-Build folder (which only contains a file named "config.m4") into the Saxon.C.API folder, overwriting the "config.m4" file that was already there.

  2. Then, after running ./configure --enable-saxon and editing the Makefile the way my previous blog post describes, I edited the Makefile a bit more, just to replace all instances of the text "php7" with "php5".

After that, all I had to do was follow the rest of my previous blog post's instructions!


I should note that I accomplished this while running Lucid Puppy Linux 5.2.8 version 004 in a VirtualBox, and I haven't yet tried it in a non-virtual system. But I'm guessing it will work in a non-virtual system too.

   ▲ Top  ▼ Bottom  △ TOC


    Hide/Show: