• If you are still using CentOS 7.9, it's time to convert to Alma 8 with the free centos2alma tool by Plesk or Plesk Migrator. Please let us know your experiences or concerns in this thread:
    CentOS2Alma discussion

php53-sqlite2 64-bit missing on CentOS

Frater

Regular Pleskian
I have a CentOS 5.7 64-bit running on Xen with Plesk 10.4.4

# uname -a
Linux ******l 2.6.18-274.7.1.el5xen #1 SMP Thu Oct 20 17:06:34 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux

# php -i >/dev/null
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/sqlite.so' - /usr/lib64/php/modules/sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0

Although the 32-bits version is there, its 64-bits is missing from the repos.
# yum search sqlite | grep php
php-pear-Log.noarch : Abstracted logging facility for PHP
php-pear-log.noarch : PEAR package for logging
php53-sqlite2.i386 : PHP5 bindings to SQLite v2, a file-based SQL engine
# ls /usr/lib/php/modules/
sqlite.so
# ls /usr/lib64/php/modules/ | grep sql
mysqli.so
mysql.so
pdo_mysql.so
pdo_sqlite.so

I think if I investigate further I'll be able to get a 64-bit sqlite module there, but I would like to know why it is missing in the first place and I want to be sure I will have the proper version in the future.

What to do now?
 
# cat /etc/php.d/sqlite.ini
; comment out next line to disable sqlite2 extension in php
extension=sqlite.so

I did this (a comment out)and now the error message is gone
# php -i >/dev/null
#

This of course means I will not have sqlite-support.
Does Plesk need it for itself?

Could any of my clients need it?
What's wisdom here?
Should I get sqlite going or should I leave it at this?

On another system (Ubuntu) with plesk, I have this:
# cat /etc/php5/conf.d/sqlite3.ini
; configuration for php SQLite3 module
extension=sqlite3.so
 
What sort of output

# cat /etc/php.d/sqlite.ini

?

I replied....
Code:
# cat /etc/php.d/sqlite.ini
; comment out next line to disable sqlite2 extension in php
extension=sqlite.so
 
Frater, where did you install php53 from on the 64bit machine? What's the output of the following commands?
rpm -qf /etc/php.d/sqlite.ini
yum repolist
yum list php*sqlite*
 
Code:
[root@ns3 ~]# rpm -qf /etc/php.d/sqlite.ini
php53-sqlite2-5.3.2-11070811
[root@ns3 ~]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.nluug.nl
 * extras: ftp.nluug.nl
 * rpmforge: ftp-stud.fht-esslingen.de
 * updates: ftp.nluug.nl
Excluding Packages in global exclude list
Finished
repo id                                        repo name                                                         status
base                                           CentOS-5 - Base                                                   3,565+1
extras                                         CentOS-5 - Extras                                                   271+1
rpmforge                                       RHEL 5 - RPMforge.net - dag                                        11,004
updates                                        CentOS-5 - Updates                                                  672+1
repolist: 15,512
[root@ns3 ~]# yum list php*sqlite*
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: ftp.nluug.nl
 * extras: ftp.nluug.nl
 * rpmforge: ftp-stud.fht-esslingen.de
 * updates: ftp.nluug.nl
Excluding Packages in global exclude list
Finished
Installed Packages
php53-sqlite2.i386                                       5.3.2-11070811                                        installed
 
Frater, I think you should file a bug with Parallels, you're using their repositories to install php53 packages. Looking at http://autoinstall.plesk.com/PSA_10.4.4/dist-rpm-CentOS-5-x86_64/contrib/ there's the i386 version of php53-sqlite2 package in their repo instead of x86_64 one. Why did they chose to do this? Don't know, a mistake perhaps. The file for the wrong arch is in that location since July last year, so you're probably one of the very few people using Plesk's repository for php packages :)
I also found http://forum.parallels.com/showthread.php?t=208409 and http://kb.parallels.com/en/111630 - which might help in case you want to install php from a different repo.
 
PRODUCT, VERSION, OPERATING SYSTEM, ARCHITECTURE
CentOS release 5.7 (Final)
Xen Virtual Machine
Linux 2.6.18-274.7.1.el5xen
Parallels Plesk Panel 10.4.4 Update #15

PROBLEM DESCRIPTION AND STEPS TO REPRODUCE
The php53-sqlite2 installed on my system is the 32-bit version.
The 64-bit version is missing

ACTUAL RESULT
# php -i >/dev/null
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/sqlite.so' - /usr/lib64/php/modules/sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0
#

EXPECTED RESULT
# php -i >/dev/null
#

ANY ADDITIONAL INFORMATION
The Plesk repo does not contain the 64-bit version although it should
http://forum.parallels.com/newreply.php?do=newreply&noquote=1&p=615072
 
I have exactly the same problem.
Installed is the package "php53-sqlite2.i386". The operating system is 64-bit.
 
I wish we could get some feedback from parallels. It seems to me something that is clearly wrong and can be easily fixed.
 
I have forwarded request to developers. Let's wait their answer.
 
As possible workaround you can just take appropriate package from rhel5x64.
 
Apparently we are using a repository from Parallels.
Shouldn't you fix it?

You should add it to YOUR repo so YOUR product works as intended.
 
Ah, so there is a 64-bit php53-sqlite2 package. I haven't tried recently, but the 32-bit php53-sqlite2 package was what got installed on 64-bit servers. I hope that's fixed now.
 
Again only part of the info, but I figured it out...
This package can not be installed because it already thinks it's installed.
It isn't really... it's the 32-bit version

Code:
rpm -i php53-sqlite2-5.3.2-11011812.x86_64.rpm
        package php53-sqlite2-5.3.2-11070811.i386 (which is newer than php53-sqlite2-5.3.2-11011812.x86_64) is already installed

Removing the package with yum means killing all the dependencies and rendering your server obsolete.
If sqlite is that important how can plesk even work?????

BE CAREFUL not to remove this module without the option "--nodeps"

One needs to do it this way:
Code:
cd /opt
wget http://64.131.90.31/PSA_10.4.4/dist-rpm-RedHat-el5-x86_64/contrib/php53-sqlite2-5.3.2-11011812.x86_64.rpm
rpm -e --nodeps php53-sqlite2-5.3.2-11070811.i386
rpm -i php53-sqlite2-5.3.2-11011812.x86_64.rpm

Before:
Code:
[root@ns3 opt]# php -v >/dev/null
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/sqlite.so' - /usr/lib64/php/modules/sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0
[root@ns3 opt]# find /usr -type f -name sqlite.so | xargs -I{} ls -l {}
-rwxr-xr-x 1 root root 368612 Jul  8  2011 /usr/lib/php/modules/sqlite.so


After:
Code:
[root@ns3 opt]# find /usr -type f -name sqlite.so | xargs -I{} ls -l {}
-rwxr-xr-x 1 root root 374792 Jan 18  2011 /usr/lib64/php/modules/sqlite.so
[root@ns3 opt]# php -v >/dev/null
[root@ns3 opt]#

Why this workaround and not a proper fix?
Isn't CentOS 64-bit not supported?
 
Last edited:
Back
Top