• Home »
  • Errors »
  • Failed loading /usr/sbin/ioncube_loader_lin_5.2.so: /usr/sbin/ioncube_loader_lin_5.2.so: undefined symbol: zend_error_noreturn

Failed loading /usr/sbin/ioncube_loader_lin_5.2.so: /usr/sbin/ioncube_loader_lin_5.2.so: undefined symbol: zend_error_noreturn

After upgrading PHP recently on a CentOS Linux server from PHP 5.2.X to PHP 5.3.X I ran into numerous minor issues. One of the issues was with a web application that requires the ionCube PHP Encoder libraries to function properly. After upgrading PHP I noticed some errors in the Apache error logs including the ionCube Apache module that was failing to load. Below I display the entire error from the Apache error_log file and how to easily resolve the issue by installing a single package via the Yum Package Manager.

ionCube PHP Encoder Module Loading Error In Apache Error Logs:

Failed loading /usr/sbin/ioncube_loader_lin_5.2.so:  /usr/sbin/ioncube_loader_lin_5.2.so: undefined symbol: zend_error_noreturn
Failed loading /usr/sbin/ioncube_loader_lin_5.2.so:  /usr/sbin/ioncube_loader_lin_5.2.so: undefined symbol: zend_error_noreturn
Failed loading /usr/sbin/ioncube_loader_lin_5.2.so:  /usr/sbin/ioncube_loader_lin_5.2.so: undefined symbol: zend_error_noreturn
Failed loading /usr/sbin/ioncube_loader_lin_5.2.so:  /usr/sbin/ioncube_loader_lin_5.2.so: undefined symbol: zend_error_noreturn

Verify php-ioncube-loader Package Available Via Yum Repos:

First verify the php-ioncube-loader package is available via one of your Yum repositories for the PHP version you have installed using the below example command as reference.

[root@dev httpd]# yum list *IONCUBE*
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: mirror.ubiquityservers.com
 * atomic: www4.atomicorp.com
 * base: dist1.800hosting.com
 * epel: mirrors.tummy.com
 * extras: styx.biochem.wfubmc.edu
 * rpmforge: ftp-stud.fht-esslingen.de
 * updates: mirror.raystedman.net
Available Packages
php-ioncube-loader.i386                                          1:3.3.20-3.el5.art                                           atomic
[root@dev httpd]#

In the above example the php-ioncube-loader package is available via the Atomic repo. Once verified the package can be installed by using the below command.

Install php-ioncube-loader Via Yum On CentOS Linux:

[root@dev httpd]# yum install php-ioncube-loader
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: mirror.ubiquityservers.com
 * atomic: www4.atomicorp.com
 * base: dist1.800hosting.com
 * epel: mirrors.tummy.com
 * extras: styx.biochem.wfubmc.edu
 * rpmforge: ftp-stud.fht-esslingen.de
 * updates: mirror.raystedman.net
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-ioncube-loader.i386 1:3.3.20-3.el5.art set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================================================
 Package                              Arch                   Version                                 Repository                Size
====================================================================================================================================
Installing:
 php-ioncube-loader                   i386                   1:3.3.20-3.el5.art                      atomic                   1.1 M

Transaction Summary
====================================================================================================================================
Install       1 Package(s)
Upgrade       0 Package(s)

Total download size: 1.1 M
Is this ok [y/N]: y
Downloading Packages:
php-ioncube-loader-3.3.20-3.el5.art.i386.rpm                                                                 | 1.1 MB     00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : php-ioncube-loader                                                                                           1/1

Installed:
  php-ioncube-loader.i386 1:3.3.20-3.el5.art

Complete!
[root@dev httpd]#

After the package is installed you should restart your web server for the changes to take. In this example the server is running Apache which can be restarted using the below command example.

Restart Apache For The ionCube Module To Load:

[root@dev ~]# /etc/init.d/httpd restart
Stopping httpd: [  OK  ]
Starting httpd: [  OK  ]
[root@dev ~]#

The ionCube loader error should no longer appear in the Apache error logs.


List Price: $29.99 USD
New From: $28.97 USD In Stock
Used from: $37.40 USD In Stock


List Price: $29.95 USD
New From: $2.32 USD In Stock
Used from: $0.32 USD In Stock

Share