Pak Ho Cheung
Pak Ho Cheung

Reputation: 1426

Composer Install - requires ext-mbstring

I am trying to do a composer install ..., but getting an error of requires ext-mbstring * -> the requested PHP extension mbstring is missing from your system. I am using Apache (Cpanel) and PHP 5.6.

Below are the ways I am trying to fix the error.

1: yum search mbstring

============================================= N/S matched: mbstring =============================================
ea-php54-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php55-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php56-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php70-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php71-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
ea-php72-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
rh-php56-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
rh-php70-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling
rh-php71-php-mbstring.x86_64 : A module for PHP applications which need multi-byte string handling

2: yum install ea-php56-php-mbstring.x86_64

Loaded plugins: fastestmirror, universal-hooks
Loading mirror speeds from cached hostfile
 * EA4: 110.4.45.120
 * cpanel-addons-production-feed: 110.4.45.120
 * base: ftp.cuhk.edu.hk
 * centosplus: ftp.cuhk.edu.hk
 * epel: ftp.cuhk.edu.hk
 * extras: ftp.cuhk.edu.hk
 * ius: hkg.mirror.rackspace.com
 * updates: ftp.cuhk.edu.hk
Package ea-php56-php-mbstring-5.6.35-1.1.5.cpanel.x86_64 already installed and latest version
Nothing to do

It seems mbstring is installed but why I got an error when I try to composer install?

Another way (update PHP version in cPanel)

1: WHM - already set to 7.1

enter image description here

2: cPanel - already set to 7.1

enter image description here

but version in server still 5.6

enter image description here

Any suggestions to resolve require ext-mbstring error?

Upvotes: 6

Views: 17284

Answers (5)

fagiani
fagiani

Reputation: 2351

I recently had a similar issue when trying to run a build for my PHP WordPress site. I ended up updating the composer.json with the snippet below in the require section:

# composer.json
# ...

"require": {
  "ext-mbstring": "*", # <-- I've added this
  "ext-gd": "*",
  "php": "7.*",
  "wordpress/wordpress": "*",

  # ...

}

Hopefully this can become useful to others in the future!

Upvotes: 1

r&#252;ff0
r&#252;ff0

Reputation: 943

Try installing mbstring php library with aptitude.

sudo apt-get install php-mbstring php7.1-mbstring

Upvotes: 9

informatik-handwerk.de
informatik-handwerk.de

Reputation: 303

If there are no deeper dependencies down the line, you could use a polyfill instead: edit the composer.json and replace the problem line with "symfony/polyfill-mbstring": "~1.0"

https://packagist.org/packages/symfony/polyfill-mbstring

Upvotes: 0

Pak Ho Cheung
Pak Ho Cheung

Reputation: 1426

Installing rh can solve this issue yum install rh-php56-php-mbstring.x86_64

Please double check what you have in your server. Mine is rh-php56-php-mbstring.x86_64 not php-mbstring

Upvotes: 3

Diogo Jesus
Diogo Jesus

Reputation: 318

Use this command to install mbstrig

 yum install php-mbstring

Once installed restart apache

 service httpd restart

Upvotes: 2

Related Questions