PHP extension xsl required for Atto Word Import plugin

Re: PHP extension xsl required for Atto Word Import plugin

by Dave Weninger -
Number of replies: 4

[root@moodle2test /]# yum list libxslt

Installed Packages
libxslt.x86_64                      1.1.28-5.el7                       @anaconda
Available Packages
libxslt.i686                        1.1.28-5.el7                       base

After setting the php,in: extension_dir="/usr/lib64/php/modules"

[root@moodle2test /]# php -i |grep ^extension_dir
extension_dir => /usr/lib64/php/modules => /usr/lib64/php/modules

My 20-xsl.ini has

; Enable xsl extension module
extension=xsl

(writing full path or xsl.so is of no use)


PHP is complied from source code.

I just modified the LAMP of my boss's existing LAMP platform.


Regards,

Kelvin Ma



In reply to Dave Weninger

Re: PHP extension xsl required for Atto Word Import plugin

by Ken Task -
Picture of Particularly helpful Moodlers

PHP is complied from source code.

You compiled php from source code?  Why? Isn't needed and this could be the reason for your issues.  Many years ago that was the only way one could get LAMP.   No longer true.  Binaries provided by reputable/well-known repos do just as well and are much easier to maintain and manage on your own system.

I just modified the LAMP of my boss's existing LAMP platform.


You might have to wipe out PHP all together --- un-compile + remove via yum.
Uhhh ... I don't re-call how to 'un-compile' - matter of fact, don't think I ever tried ... may not be possible.

Well, have taken this one as far as I can ... good luck!
'spirit of sharing', Ken

In reply to Dave Weninger

Re: PHP extension xsl required for Atto Word Import plugin

by Ken Task -
Picture of Particularly helpful Moodlers

In your Moodle there is Admin Menu -> Server -> PHP info.

In older versions of php at the very top, there used to be a box that showed how PHP was built/compiled.  Is that box present on your system?  Probably isn't.

But, with php -i at the very top of that output, is there a section entitled: Configure Command =>

Here's what it looks like on a stock Mac ...

Configure Command =>  '/Library/Caches/com.apple.xbs/Binaries/apache_mod_php/install/TempContent/Objects/php/configure'  '--prefix=/usr' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--disable-dependency-tracking' '--sysconfdir=/private/etc' '--with-libdir=lib' '--enable-cli' '--with-iconv=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--with-config-file-path=/etc' '--with-libxml-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--with-openssl=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr/local/libressl' '--with-kerberos=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--with-zlib=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--enable-bcmath' '--with-bz2=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--enable-calendar' '--disable-cgi' '--with-curl=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--enable-dba' '--with-ndbm=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--enable-exif' '--enable-fpm' '--enable-ftp' '--with-gd' '--with-png-dir=/Library/Caches/com.apple.xbs/Binaries/apache_mod_php/install/TempContent/Root/usr/local' '--with-jpeg-dir=/Library/Caches/com.apple.xbs/Binaries/apache_mod_php/install/TempContent/Root/usr/local' '--enable-gd-native-ttf' '--with-icu-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--with-ldap=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--with-ldap-sasl=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--with-libedit=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--enable-mbstring' '--enable-mbregex' '--with-mysqli=mysqlnd' '--with-pcre-regex=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--without-pcre-jit' '--with-pdo-pgsql=/Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.14.xctoolchain/usr/local/bin' '--with-pgsql=/Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.14.xctoolchain/local/bin' '--without-pear' '--with-pear=no' '--with-pdo-mysql=mysqlnd' '--with-mysql-sock=/var/mysql/mysql.sock' '--disable-phpdbg' '--with-readline=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--enable-shmop' '--with-snmp=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--enable-soap' '--enable-sockets' '--enable-sysvmsg' '--enable-sysvsem' '--enable-sysvshm' '--with-tidy=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--enable-wddx' '--with-xmlrpc' '--with-iconv-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--with-xsl=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.Internal.sdk/usr' '--with-apxs2=/Applications/Xcode.app/Contents/Developer/Toolchains/OSX10.14.xctoolchain/usr/local/bin/apxs' '--enable-zip' 'YACC=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/bison'

Can re-call doing what you say you've done ... compiled ... and having 'great fun' (yeah, right!) with how to install something I left out ... supports wise ... If you noticed above ... --with-xsl ... the very thing you are trying to get running on your server.

In addition, today ... one needs more than the compilers gcc, gcc+ etc. but libraries and headers as well as other apps and those have hooks into apache.

Yep ... by far much easier to use a repo and yum.

'spirit of sharing', Ken



In reply to Ken Task

Re: PHP extension xsl required for Atto Word Import plugin

by Dave Weninger -

Sorry, I may make up something. I suspect that my boss just compile the source code of Apache but used yum to install the php modules. My boss prefers to compile source code because he said that this will allow him to upgrade the system version.

[root@moodle2test ~]# yum list php-xml
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.cuhk.edu.hk
 * epel: mirrors.aliyun.com
 * extras: ftp.cuhk.edu.hk
 * remi-php72: ftp.riken.jp
 * remi-safe: ftp.riken.jp
 * updates: ftp.cuhk.edu.hk
Installed Packages
php-xml.x86_64                   7.2.16-1.el7.remi                   @remi-php72

If you have no idea, I may give up. Thank for very much for your help.

Best Regards,

Kelvin Ma


In reply to Dave Weninger

Re: PHP extension xsl required for Atto Word Import plugin

by Ken Task -
Picture of Particularly helpful Moodlers

I'd disagree with your boss.  Having to recompile one of the 3 (Apache/PHP/MySQL) due to what Windows folks know as a 0 day flaw and in the wild is exactly the reason for the decision to use repos.   Those security flaws came frequently enough to make re-compiling a chore.   For the users of Moodle that equates to more down time ... and in this case, adding something in an editor that is dependent upon something outside of code could also mean a 'white screen of death' - maybe only in certain areas ... and then a trip down a rabbit hole!   I got very tired of playing the role of 'Elmer Fudd'!

Soooooo .... best of luck to ya!

You might find better luck in some other forums.

'spirit of sharing', Ken