installation of php7.4 extensions were incomplete

Asked by Hac Long on 2020-10-01

i have upgraded from Ubuntu 18.04 to Ubuntu 20.04.1 yesterday
somehow during upgrade, there were two php version on my computer (7.2 and 7.4) so extensions weren't listed in the right php version.
I decided to remove all php packages and restart with a clean (!) php install
I have also removed all php files under /etc/php

with Synaptic application, i checked the php package + additional extensions + dependencies for installation.
Php installation is working fine -> checked with a phpinfo page.
Dependencies are installed in the /usr/share/php* directories but there's no .ini files in /etc/php/7.4/mods-available directory.

I have retry the installation many times (removing and reinstalling) but still nothing in my mods-available directory.

I can't find any documentation on _how_ the ini files are symlinked / copied from the usr/share to the mods-available directory so if you could point me to the right direction
especially, what's the rule to apply in order to have the prefixed number to the expected ini files in mods-available ?

Thank you

Question information

English Edit question
Ubuntu php7.4 Edit question
No assignee Edit question
Solved by:
Hac Long
Last query:
Last reply:
Bernard Stafford (bernard010) said : #2

php-pear is one of the suggested packages
This is a list of all of php 7.4 dependencies

Hac Long (haclong) said : #3

Thank you @Bernard010 for the links
I fail to see though how the php manual explain how Ubuntu is structuring its filesystem

On the other hand, the Ubuntu page is, as you said, a list of all php 7.4 dependencies. It doesn't explain what to do or how to fix an empty mods-available directory even though the package has been installed over and over again.

As for me, the installation of the package failed at the last steps.

In any case, i finally solved the situation and i hope it is the right thing to do because i couldn't find any documentation on that matter :
I just copied all the .ini files from /usr/share/php7.4-{modulename}/{modulename}/*.ini to /etc/php/7.4/mods-available/.
Then, i use the phpenmod directive to enable the extension.

This part, i can't find no documentation about it because aptitude SHOULD have done the installation right.
I think aptitude done it right but _probably_ something was wrong in my Ubuntu installation and aptitude couldn't complete the installation.

I think, if it was the right thing to do (for me), this should be added to some documentation.