70

How do I install the bcmath module on a server? I tried

yum update php-bcmath

but it said it found nothing.

Pang
  • 9,564
  • 146
  • 81
  • 122
JDesigns
  • 2,284
  • 7
  • 25
  • 39

19 Answers19

70

Try yum install php-bcmath. If you still can't find anything, try yum search bcmath to find the package name

greg0ire
  • 22,714
  • 16
  • 72
  • 101
67

ubuntu and php7.1

sudo apt install php7.1-bcmath

ubuntu and php without version specification

sudo apt install php-bcmath
Marcel Kohls
  • 1,650
  • 16
  • 24
Albert S
  • 2,552
  • 1
  • 22
  • 28
12
yum install php72-php-bcmath.x86_64
cp /etc/opt/remi/php72/php.d/20-bcmath.ini /etc/php.d/
cp /opt/remi/php72/root/usr/lib64/php/modules/bcmath.so /usr/lib64/php/modules/
systemctl restart httpd

Not sure why I had to go so deep considering the yum install gave me bcmath in phpinfo()

fragbait
  • 121
  • 1
  • 2
  • 1
    Because you need php-bcmath (base package, from remi-php72) not php72-php-bcmath (SCL from remi-safe) – Remi Collet Jul 23 '18 at 05:20
  • This solution worked for me. I am new to this. Can somebody explain this in details? Or provide a link where I can see more details. – Ahmed Numaan Aug 29 '18 at 06:50
11

Worked great on CentOS 6.5

yum install bcmath

All my calls to bcmath functions started working right after an apache restart

service httpd restart

Sweet!

Community
  • 1
  • 1
Anthony
  • 111
  • 1
  • 2
8

When using the official PHP images of Docker, use docker-php-ext-install bcmath.

Source: https://hub.docker.com/_/php?tab=description#php-core-extensions

marijnz0r
  • 934
  • 10
  • 23
  • 3
    Thank you SO much! It's been 5+ years since I've done any php, but I have since started using Docker for everything. I had to dig up a really old project and I've been adding random PPA's and debs, trying to use PECL and a bunch of other things for hours. Composer install finally worked thanks to you! – ChristianTL Oct 04 '19 at 05:51
6

Was getting call to undefined function bcmod()

yum install php-bcmath
systemctl restart httpd.service

you should then see something similar to /etc/php.d/bcmath.ini listed under phpinfo.

Centos 7
Plesk 12
PHP 5.4.16
Nazar554
  • 4,105
  • 3
  • 27
  • 38
MrT
  • 61
  • 1
  • 1
4

If you have installed php 7.1 then this line work on your system.

sudo apt install php7.1-bcmath

check your php version in your system on ubuntu 16.04

php -v

and then result show there..

PHP 7.1.x+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Aug 19 2018 07:16:12) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.9-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

Sinto
  • 3,915
  • 11
  • 36
  • 70
testing
  • 79
  • 3
4

The following worked for me on Centos 7.4 with PHP 7.1 using remi repository.

First find out which PHP version I have:

[kiat@reporting ~]$ php --version
PHP 7.1.33 (cli) (built: Oct 23 2019 07:28:45) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.1.33, Copyright (c) 1999-2018, by Zend Technologies

Then search for bcmath extension in remi-php71 repository:

[kiat@reporting ~]$ yum search php71 | grep bcmath
php71-php-bcmath.x86_64 : A module for PHP applications for using the bcmath
php71u-bcmath.x86_64 : A module for PHP applications for using the bcmath

Now install the first matching extension:

[kiat@reporting ~]$ sudo yum --enablerepo=remi-php71 install php-bcmath
Loaded plugins: fastestmirror, langpacks
base                                                     | 3.6 kB     00:00
.
.
.

Finally, restart php and nginx:

[kiat@reporting ~]$ sudo systemctl restart php-fpm nginx
kiatng
  • 2,847
  • 32
  • 39
3

I found that the repo that had the package was not enabled. On OEL7,

$ vi /etc/yum.repos.d/ULN-Base.repo
Set enabled to 1 for ol7_optional_latest

$ yum install php-bcmath

and that worked...

I used the following command to find where the package was

$ yum --noplugins --showduplicates --enablerepo \* --disablerepo \*-source --disablerepo C5.\*,c5-media,\*debug\*,\*-source list \*bcmath
Neo
  • 4,640
  • 5
  • 39
  • 53
3

If you want to enable any extension then you have to install an extension first, extension maybe enabled but not installed, so taking the example of bcmath

  1. yum search php-bcmath

  2. Then ensure the php version in which u want to install this extension

  3. You will get output like after yum search command>>

yum search php-bcmath** Loaded plugins: fastestmirror, universal-hooks Loading mirror speeds from cached hostfile

EA4: 66.71.244.18
cpanel-addons-production-feed: 66.71.244.18
base: mirror.nodesdirect.com
epel: mirror.coastal.edu
extras: www.gtlib.gatech.edu
nux-dextop: mirror.li.nux.ro
updates: mirror.jaleco.com
**============================================================== N/S matched: php-bcmath ===============================================================
ea-php54-php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
ea-php55-php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
ea-php56-php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
ea-php70-php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
ea-php71-php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
ea-php72-php-bcmath.x86_64 : A module for PHP applications for using the bcmath library
  1. If I wanna install for php71 then the command will be like yum install ea-php71-php-bcmath.x86_64 or yum install php71-bcmath.

  2. You can install any extension from the above steps.

2

In Ubuntu PHP 7.3

sudo apt install php7.3-bcmath
fcva
  • 379
  • 3
  • 8
2

To enable bcmath in Arch Linux or Manjaro

Edit php.ini

nano /etc/php/php.ini

Uncomment bcmath (remove semicolon)

extension=bcmath

If you are using Apache server reload the server by

sudo systemctl reload apache.server

Or

sudo systemctl realod httpd

If you don't use Apache

sudo systemctl reload php-fpm.service

To see the activated modules

php -m

To make sure the bcmath is installed and activated, search for it

php -m | grep bcmath
Oussama
  • 165
  • 12
1

This worked for me install php72-php-bcmath.x86_64 Then,

systemctl restart php72-php-fpm.service
Sam
  • 1,106
  • 10
  • 14
1

For PHP 7+ version you can use only:

sudo apt install php-bcmath
Santo Boldizar
  • 1,255
  • 14
  • 17
0

I just tried below package for php v5.6 and it worked for me.

yum install php56w-bcmath
Palanikumar
  • 1,706
  • 5
  • 28
  • 51
0

apt repo have this extension, just run the below command from your terminal ::

sudo apt-get install php7.2-bcmath*

0

If still anyone is not getting how to install bcmath as it has lots of other dependant modules to install like php7.2-common, etc.

Try using synaptic application, to install the same. fire command.\

sudo apt-get install synaptic

Open the synaptic application and then click on search tab.

search for bcmath

search results will show all the packages depends on php.

Install as per your convenience.

and install with all auto populated dependancies it required to install.

That's it.

Rahul
  • 18,271
  • 7
  • 41
  • 60
0

For Centos 7 with php7.0

Install CentOS SCLo RH repository: yum install centos-release-scl-rh

Install rh-php71-php-bcmath rpm package: yum install rh-php71-php-bcmath

systemctl restart httpd.service

avermaet
  • 1,543
  • 12
  • 33
0

If you want to install PHP extensions in ubuntu.

first know which PHP version is active.

php -v

After that install needed plugin using this command.

sudo apt install php7.0-bcmath

you can replace php7.0-bcmath to php-PHPVersion-extensionName

Sanjun Dev
  • 518
  • 8
  • 20