I need help with installation of php-devel (I need it, cause it has phpize, which is necessary to install eAccelerator). But when I try to install php-devel with yum install php-devel it gives me the following errors:
# yum install php-devel
Loaded plugins: fastestmirror, priorities
Loading mirror speeds from cached hostfile
* base: centos.itt-consulting.com
* epel: mirror.yandex.ru
* extras: centos.itt-consulting.com
* passenger: mirror.hmdc.harvard.edu
* updates: centos.itt-consulting.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php-devel.x86_64 0:5.3.3-14.el6_3 will be installed
--> Processing Dependency: php = 5.3.3-14.el6_3 for package: php-devel-5.3.3-14.el6_3.x86_64
--> Finished Dependency Resolution
Error: Package: php-devel-5.3.3-14.el6_3.x86_64 (updates)
Requires: php = 5.3.3-14.el6_3
Installed: php-5.4.6-1.el6.remi.x86_64 (#remi-test)
php = 5.4.6-1.el6.remi
Available: php-5.3.3-3.el6_2.8.x86_64 (base)
php = 5.3.3-3.el6_2.8
Available: php-5.3.3-14.el6_3.x86_64 (updates)
php = 5.3.3-14.el6_3
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
I have no idea what to do with these errors. And I have php 5.3.3 installed (phpinfo() says that), so don't understand why in this list I can see Installed: php-5.4...
Rather than running yum install php-devel you needed to run yum --enablerepo=remi,remi-php54 install php-devel .
In short, just specifying which php-devel version you wanted from the remi repo. In your case you had php54 installed from remi so you needed to add in "remi-php54" . That would have successfully installed php-devel without the downtime.
What I did was:
yum search php53
and it showed the php-devel file to install. Once I did the search and found the correct devel package, I simply copied and pasted the entire name after yum install. I executed
yum install php53-devel.x86_64
to get it
If you have php 5.5.x, centos 6.5 64 try this
yum install php55w-devel
You will need also gcc
yum install gcc.x86_64
php was installed from Remi's repository. You will need to either downgrade to the stock php, or get php-devel from the same place.
sudo yum --enablerepo=remi install php-devel
Taking into consideration that I have different things installed from different repos, the only way was to delete all packages installed from Remi's repo and install standard packages with yum.
1) List all packages installed from some strange repo (in my case #remi), e.g. yum list installed | grep remi.
2) Remove all packages completely from the system with yum remove <package_name>
NOTE: after httpd restarting - all sites will DIE!
3) Quickly install all bunch of things you need, e.g. yum install php-mysql php-gd php-imap php-ldap php-mbstring php-odbc php-pear php-xml php-xmlrpc etc.
4) Restart httpd and start mysql server.
5) Your sites are alive again.
The only thing why I did all this is cause I wanted to install eAccelerator for php to speed it up a little bit (and it's installation was impossible because of remi's repo packages), and I'm happy that I did it! All scripts works 2-10 times faster (I could not even imagine that my sites can respond so fast).
About the initial question (install eAccelerator).
This project is dead, and have never work with PHP >= 5.4.
So if you need an opcode cache, please choose a maintained one. I would recommend "opcache", the official cache maintained by the PHP project, included in php-src since 5.5, and available in pecl for 5.4.
And if you use "remi" repository, before trying to build an extension, check first if it is available in the repository, as most of the PECL extensions are available as RPM, see http://blog.remirepo.net/pages/PECL-extensions-RPM-status
yum --enablerepo=remi,remi-php55 install php55-devel
worked for me
For PHP 7.2 and similar, the following works for me(notice the remi-php72)
sudo yum --enablerepo=remi,remi-php72 install php-devel
if this is about installing xdebug requirements for centos then:
sudo yum --enablerepo=remi,remi-php72 install php-devel autoconf automake
Just type:
sudo nano /etc/yum.conf
And then remove php*
then type:
yum install --enablerepo remi php-pear php-devel
Related
Originally I had php 5.3 installed in my centos machine (version 6.4) .. however I upgraded the version of php to be 5.6 using these commands lines :
yum remove php-common
yum install php56w
yum install php56w-mysql
yum install php56w-common
yum install php56w-pdo
yum install php56w-opcache
Actually when I run php -v it gives me : 5.6.
However when I'm trying to install the package php-devel:
sudo yum install php-devel --skip-broken
it gives me :
Packages skipped because of dependency problems:
php-5.3.3-47.el6.x86_64 from base
php-cli-5.3.3-47.el6.x86_64 from base
php-common-5.3.3-47.el6.x86_64 from base
php-devel-5.3.3-47.el6.x86_64 from base
How may I correct this dependency problem ?
Thanks
You should install the 5.6 version of php-devel.
sudo yum install php56w-devel
On this link you can see the list of packages for centos and php5.6 on the "packages" section:
https://webtatic.com/packages/php56/
I have installed PHP by executing the following command:
yum install php
It installs PHP 5.3.3 in my server... but I want to install PHP 5.4. How can I do that?
Saw it on https://webtatic.com/packages/php54/
To install, first you must add the Webtatic EL yum repository information corresponding to your CentOS/RHEL version to yum:
CentOS/RHEL 7.x:
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
CentOS/RHEL 6.x:
rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpm
CentOS/RHEL 5.x:
rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm
Now you can install php by doing:
yum install php54w
yum installs approved versions of packages. The approved version depends on a few things, such as your distribution and whether the package itself has been tested and deemed as working. This testing can sometimes lag well behind the development of the packages. Chances are that the version that you have installed is the latest approved version.
Building PHP isn't manually terribly difficult, so that's probably your best option. Uninstall the version you have from yum and checkout the official instructions on how to clone and build yourself.
Either that or look around for other packages in yum that give you a newer version (see #barbarity's answer).
Reference http://ahmed.amayem.com/replacing-yum-plugin-replace-one-yum-install-package-php-with-another-on-linux-centos-6/
Check available packages
rpm -q php
Installing the webtatic release RPM(For CentOs 6.x)
sudo rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
Check for available packages in other repo
yum info php55w
Trying to update using yum update
sudo yum update php
Updating using yum remove then yum install
yum info php-common
Removing php-common
sudo yum remove php-common
Installing php55w and php55w-common
sudo yum install php55w php55w-common
Now restart your apache server then check the php version.
stack: PHP 5.4.23, php-fpm, nginx 1.4.x, centos 6.5
I was trying to install xdebug, had to run phpize command.
I have php5-devl already installed and pecl command works
When I ran the command, it gave me the following error output:
# phpize
Can't find PHP headers in /usr/include/php
The php-devel package is required for use of this command.
How to fix this error?
I think you have not installed php-pear . I am not seeing it in that link.
You can do it by yum install php-pear
Info
You can install xdebug also using these steps
1) Install PHP’s devel package for PHP commands execution
yum install php-devel
Make sure you also have php-pear package installed
yum install php-pear
2) Install GCC and GCC C++ compilers to compile Xdebug extension yourself.
yum install gcc gcc-c++ autoconf automake
3) Compile Xdebug
pecl install Xdebug
4) Find the php.ini file using
`locate php.ini`
And add the following line
[xdebug]
zend_extension="/usr/lib64/php/modules/xdebug.so"
xdebug.remote_enable = 1
5) Restart Apache
service httpd restart
6) Test if it works – create test.php with the following code
<?php phpinfo(); ?>
The problem got solved by the PHP version that is used in the system.
My PHP Version was 5.6
So by running the following command I solved the problem
yum install php56-devel
Where "56" is your version of PHP.
If you're on PHP 7 such as in my case just installing php-devel won't solve your problems, but you'll need to install some additional packages:
yum install php-devel pcre-devel gcc make
And then you'll be able to follow Harikrishnan steps to get xdebug working (if not yet configured).
My problem hasn't been solved using
yum install php-devel
But this helped me to solve the problem:
yum --enablerepo=remi,remi-php55 install php55-php-devel
I am trying to install packages using repositories.
I have tried Webtatic and install using
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
I then try
yum install --enablerepo=webtatic package-name
yum install cpanel-php53.x86_64
but I always get setting up install process nothing to do
How would I get php to work on this server? And also yum list install returns along list of packages do I have to do anything extra with these packages to use them
For custom rpm build, follow this guide.
http://docs.cpanel.net/twiki/bin/view/AllDocumentation/WHMDocs/CustomBuildRpm
I'm trying to install the php_http PHP extension on my CentOS server.
I have done:
yum install php-pear
But get:
No package php-pear available
Yet I can do:
pear
And get a list of commands from Pear.
Same for yum install pecl. I can do pecl but pecl install pecl_http returns:
No releases available for package "pecl.php.net/pecl_http"
install failed
Yet /usr/bin/pecl isn't a directory that exists. Also a sudo pecl install pecl_http returns sudo: pecl: command not found, which I find quite odd.
I'm not entirely sure what's going on here/what I'm doing wrong.
edit: I am using the following repos:
base CentOS-6 - Base
epel Extra Packages for Enterprise Linux 6 - x86_64
extras CentOS-6 - Extras
rpmforge RHEL 6 - RPMforge.net - dag
updates CentOS-6 - Updates
vz-base vz-base
vz-updates vz-updates
On CentOS,
Install PHP Pear if not installed yet:
# yum install php-pear
Install GCC if not installed yet:
# yum install gcc
Install cURL if not installed yet:
# yum install curl-devel
Install following libraries if not installed yet:
# yum install php-devel
# yum install zlib-devel
# yum install pcre-devel
Start the main installation:
# pecl install pecl_http
Add the following line to /etc/php.ini file
extension=raphf.so
extension=propro.so
extension=http.so
Restart apache server so the extension can be loaded
# service httpd restart
You can check if it installed successfully or not:
# pecl list
Step 1) import the REMI repo
CentOS 5
rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm;
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm;
CentOS 6
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm;
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm;
Step 2) install php-pear
yum --enablerepo=remi,remi-php55 install php-pear
Step 3) install pecl_http
pecl install pecl_http
For other people having this problem. I discovered this question while trying to figure out why I was having the same problem. Turned out the default configuration at my hosting provider was to include php* in the exclude directive for yum. Check /etc/yum.conf and make sure that the package you're trying to install isn't matched by an entry in the exclude directive.
if you are running php 7 you might want to try this
yum install php70w-pear
if you get any errors, be sure to uninstall the pear package from any previous attempts
yum remove php-pear
best of luck
If you are using php 5.4.x, IMO best repo to use is iuscommunity. Its very stable and used by Rackspace to do only PHP and a few other packages for CentOS.
rpm -Uhv http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/ius-release-1.0-11.ius.centos6.noarch.rpm
yum install php54-pear
Mind you, the reason why its php54-pear and not php-pear is because 5.3 and 5.4 both are compiled in the repository. Here is the list of php packages -> http://dl.iuscommunity.org/pub/ius/stable/CentOS/6/x86_64/repoview/development.languages.group.html
I tested this and it works, but I only use EPEL and iuscommunity REPO's. I avoid using rpmforge myself.
Centos 6.5 and php7:
sudo su -
yum install yum-utils
you can get last version of lua : http://pecl.php.net/package/lua
wget http://pecl.php.net/get/lua-2.0.4.tgz
tar -xvzf lua-2.0.4.tgz
cd lua-2.0.4
mkdir /usr/include/lua
mv * /usr/include/lua
yum install gcc
yum install php70w-pearl php70w-devel
yum install curl-devel
yum install zlib-devel
yum install pcre-devel
ln -s /usr/include/lua.h /usr/include/lua/lua.h
rpm -Uvh https://centos6.iuscommunity.org/ius-release.rpm
yum-config-manager --enable remi-php70
yum update
yum --enablerepo=remi,remi-php70 install php70w-pear
yum install lua-devel lua-static
pecl install lua-2.0.4
Whatever your PHP provider is (IUS, Remi or Webtatic), the pear package and the pecl extensions "should" be available there, without any need to compile it from sources (which is usually discouraged, especially on production)
At least "remi" provides most extensions, see the list
So installation should be as simple as
yum install php-pecl-http
yum install php-pecl-lua
etc
And, don't forget to read the Wizard instructions
I tried almost everything on this list before I finally realized that my WHM/cPanel installation was blocking the yum packages. I have to install all PECL modules (I was stuck trying to install mongodb on this particular occation) through the Home > Software > Module Installers inside WHM (cpanel documentation says that you have to be logged in as root).
After watching a lot of threads and installing pear and all the devtool, I finally solved it installing this extension:
yum install php-pecl-mongo
as I seen in - https://madcoda.com/2012/12/install-mongodb-php-driver-in-centos-6-3/