nixCraft Poll

Topics

Install PHP 5 on Red Hat Enterprise Linux version 4

Posted by Vivek Gite [Last updated: July 30, 2007]

It appears that many people or sys admin want to run php 5 on Red Hat Enterprise Linux. Unfortunately Redhat does not provide this package (RPM file) for RHEL. You can download source code and install php 5 from official php site. This requires compiler collection on your system. Download source code and just follow instructions presented in INSTALL or REDME file.

Another option is search and installs PHP 5 packages. You can download x86_64 PHP 5 package here. Use wget command to download these packages and rpm command to install new packages. But first remove old php4 package using rpm -e command.

However these rpm packages 64 bit so if you are running 32 bit os rebuild RPM file.

Step # 1: Download src rpm

# cd /tmp
# wget http://www.cyberciti.biz/files/lighttpd/rhel4-php5-fastcgi/php-5.1.4-1.esp1.src.rpm
# rpm -ivh php-5.1.4-1.esp1.src.rpm

Step #2: Rebuild RPM for 32 bit RHEL version

# cd /usr/src/redhat/SPECS
# rpmbuild -bb php.spec

It will take some time to compile and rebuild RPM files.

Step #3: Install new php5 RPM file

Remove old php4 rpm. Go to /usr/src/redhat/RPMS directory and install PHP5 RPM files.

Please note that PHP 5 is not official supported by Red Hat on RHEL 4.0. You are using these packages on your own risk ;)

Want to stay up to date with the latest Linux tips, news and announcements? Subscribe to our free e-mail newsletter or RSS feed to get all updates. You can Email this page to a friend.

You may also be interested in other helpful articles:

Discussion on This Article:

  1. Jason Says:

    Or, you could grab the src rpm from FC5, which builds cleanly on RHEL4. (http://redhat.download.fedoraproject.org/pub/fedora/linux/core/5/source/SRPMS/php-5.1.2-5.src.rpm)

  2. Jason Says:

    Or, you could just grab the src rpm from FC5, which compiles cleanly on RHEL4.

  3. nixcraft Says:

    Jason,

    Good finding. I never mixed up FC with RHEL. But I guess SRC RPM makes the difference.

    I think you can also use SRC RPM from CentOS project.

    Appreciate your post.

  4. debbie taylor Says:

    tell me how to put windows 2000 on my computer red hat fedora either 4 or 6

  5. nixcraft Says:

    Assuming that you have 40 GB hard disk
    Create one partition and Install Windows 2000 in 10GB first
    Next install linux and create 2 partition
    Ext3 for 10GB
    Swap 512MB
    Install MBR on first partition and let the grub boot both oses.

  6. James Says:

    checking for mSQL support… no
    checking for MSSQL support via FreeTDS… no
    checking for MySQL support… yes, shared
    checking for specified location of the MySQL UNIX socket… no
    checking for MySQL UNIX socket location… no
    checking for mysql_close in -lmysqlclient… yes
    checking for MySQLi support… yes, shared
    checking whether to enable embedded MySQLi support… no
    mysql_config not found
    configure: error: Please reinstall the mysql distribution
    error: Bad exit status from /var/tmp/rpm-tmp.5476 (%build)

    RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.5476 (%build)

    I updated to mysql5 RPMs from the mysql site. not sure how ti fix this. ideas?

  7. nixcraft Says:

    James,

    What versions of OS, MySQL server, libmysqlclient and PHP do you use?

  8. neo_yorke Says:

    You need MySQL-devel-standard-XX (your distro)

  9. Raykin Says:

    I’m just did a fresh install of Redhat Enterprise V4 along with Apache 2 and mySQL that came with the install. I purposely did not install any PHP as the version that comes with the package is version 4. (I need to install version 5).

    I understand these instructions up to Step 3…”Go to /usr/src/redhat/RPMS directory and install PHP5 RPM files.”

    How do you “install”? Do you mean copy them into the directory?

  10. nixcraft Says:

    Use rpm command to install:
    cd /usr/src/redhat/RPMS
    rpm -ivh file.rpm

  11. habitnoir Says:

    I am trying to build php5.1.2 from fc5 source but I keep running into a compiler error concerning the flag “-Wno-pointer-sign”. Is it necessary? I have RHEL v4. I updated gcc to 3.4.6 in an attempt to fix the problem. I’ve included an excerpt of the config.log below.

    Thanks.

    ==begin

    configure:2547: gcc -O2 -g -pipe -m32 -march=i386 -mtune=pentium4 -fno-strict-aliasing -Wno-pointer-sign conftest.c >&5
    cc1: error: unrecognized command line option “-Wno-pointer-sign”
    configure:2550: $? = 1
    configure: failed program was:
    | /* confdefs.h. */
    |
    | #define PACKAGE_NAME “”
    | #define PACKAGE_TARNAME “”
    | #define PACKAGE_VERSION “”
    | #define PACKAGE_STRING “”
    | #define PACKAGE_BUGREPORT “”
    | /* end confdefs.h. */
    |
    | int
    | main ()
    | {
    |
    | ;
    | return 0;
    | }
    configure:2589: error: C compiler cannot create executables

    ==end

  12. Lorenzo Says:

    Got the same issue! Sigh!

  13. squeegee Says:

    You need to compile with gcc 4.x.x, not 3.x.x

  14. Emilio Says:

    rpm -ivh php-5.1.4-1.esp1.src.rpm
    1:php ########################################### [100%]

    Please, I need your help.What I have to do now?
    I have a RHEL4 and PHP 4.3.9 is running… I want to upgrade it to v.5. After step #3 what I have to do?

  15. nixcraft Says:

    Type following commands:
    cd /usr/src/redhat/SPECS
    rpmbuild -bb php.spec
    cd /usr/src/redhat/RPMS
    rpm -Uvh php*

  16. Emilio Says:

    Thank you nixcraft for your reply, this is what it returned:

    # rpmbuild -bb php.spec
    cat: /usr/include/httpd/.mmn: No such file or directory
    error: Failed build dependencies:
    bzip2-devel is needed by php-5.1.4-1.esp1.x86_64
    curl-devel >= 7.9 is needed by php-5.1.4-1.esp1.x86_64
    expat-devel is needed by php-5.1.4-1.esp1.x86_64
    gmp-devel is needed by php-5.1.4-1.esp1.x86_64
    aspell-devel >= 0.50.0 is needed by php-5.1.4-1.esp1.x86_64
    httpd-devel >= 2.0.46-1 is needed by php-5.1.4-1.esp1.x86_64
    libjpeg-devel is needed by php-5.1.4-1.esp1.x86_64
    libpng-devel is needed by php-5.1.4-1.esp1.x86_64
    pcre-devel >= 4.5 is needed by php-5.1.4-1.esp1.x86_64
    libc-client-devel is needed by php-5.1.4-1.esp1.x86_64
    net-snmp-devel is needed by php-5.1.4-1.esp1.x86_64

    Oh my god…

  17. nixcraft Says:

    Install all those deps using up2date command -
    up2date bzip2-devel aspell-devel .... etc-all

  18. emmy Says:

    Is there no direct rpm package for php on RHEL4 that will not require an building.

    When i attempted building the php.spec file i get
    error: Failed build dependencies:
    aspell-devel >= 0.50.0 is needed by php-5.1.4-1.el4s1.2.i386
    httpd-devel >= 2.0.46-1 is needed by php-5.1.4-1.el4s1.2.i386
    pcre-devel >= 4.5 is needed by php-5.1.4-1.el4s1.2.i386
    libc-client-devel is needed by php-5.1.4-1.el4s1.2.i386
    postgresql-devel is needed by php-5.1.4-1.el4s1.2.i386
    unixODBC-devel is needed by php-5.1.4-1.el4s1.2.i386
    net-snmp-devel is needed by php-5.1.4-1.el4s1.2.i386

    i presume will ask me to use up2date to get this packages. Unfortunately I cannot seem to use up2date becase i dont have serials on my Redhat edition.

    is there any other way please

  19. nixcraft Says:

    emmy,

    Install rpms from CD/media using rpm command. You need to mount a cd first and locate package.

  20. rev_aaron Says:

    error: Failed build dependencies:
    aspell-devel >= 0.50.0 is needed by php-5.1.2-5.i386
    httpd-devel >= 2.0.46-1 is needed by php-5.1.2-5.i386
    libjpeg-devel is needed by php-5.1.2-5.i386
    libpng-devel is needed by php-5.1.2-5.i386
    sqlite-devel >= 3.0.0 is needed by php-5.1.2-5.i386
    pcre-devel >= 4.5 is needed by php-5.1.2-5.i386
    libtool >= 1.4.3 is needed by php-5.1.2-5.i386
    libc-client-devel is needed by php-5.1.2-5.i386
    mysql-devel >= 4.1.0 is needed by php-5.1.2-5.i386
    postgresql-devel is needed by php-5.1.2-5.i386
    unixODBC-devel is needed by php-5.1.2-5.i386
    net-snmp-devel is needed by php-5.1.2-5.i386
    libxslt-devel >= 1.0.18-1 is needed by php-5.1.2-5.i386
    gd-devel is needed by php-5.1.2-5.i386
    freetype-devel is needed by php-5.1.2-5.i386

  21. rhil Says:

    If you have php4 installed in your system already its better to uninstall it along with all the dependency. or when you try to install with rpm force it to install and use –no-deps so it will not check the dependency

  22. alex Says:

    If I install using Step 1, do I still need to do Step 2 and Step 3?

    I am using RHEL 4.

    Thanks.

  23. alex Says:

    Hi,

    I am using PuTTy to remotely install using root and I am on step 2, rebuilding rpm. Unfortunately my internet connection was disconnected.

    By theory, what I see here is only what is being done in the server. Will my rebuilt stopped and I need to redo it? Or it may already finished? How do I check that?

    Regards,
    Alex

  24. vivek Says:

    Alex,

    You need to rebuild all rpms using rpmbuild command if ssh terminated. 1st step will only install src rpm you need to complete rest of the all.

    HTH

  25. Cesar Says:

    Hello I can get to the final step just fine, but when I got to install php i receive this error.

    error: open of php-pear-4.3.9-3.22.4.i386.rpm failed: No such file or directory
    error: Failed dependencies:
    php-pear is needed by php-5.1.4-1.esp1.i386

    When I down this package and put it in the same directory as the other rpms it still gives the same error even though i have the –aid option set when trying to install. Any suggestions?

  26. miller Says:

    I get the same error last posted.

    error: open of php-pear-4.3.9-3.22.4.i386.rpm failed: No such file or directory
    error: Failed dependencies:
    php-pear is needed by php-5.1.4-1.esp1.i386

    Any solution

  27. Jonas Says:

    Cesar and Miller,

    this problem is easy of if to decide, is enough to lower php-pear.

    Package: php-pear-1.4.9-1.2.noarch. It makes download:

    # wget http://hosting.xoxidemods.com/rpms/php-pear-1.4.9-1.2.noarch.rpm

  28. JJP Says:

    Question,

    I am trying this method of installing PHP5 on our RHEL 4 dev box, and wanted to know if you, nixcraft, or anyone else who gotten this to work is available to assist with this matter.

    I am getting the dependencies error and have found that up2date did not, in fact, bring the dependencies up-to-date enough for the reubilt rpm to work.

    Thanks In Advance

    –JJP

  29. Ratana Ty Says:

    Hi All,

    I can solve most of the problem by mounting
    the CD then trying to install it, but what I notified is those package is not available from CD1 to CD4, Do any one have any idea about what/how can I move on…
    # rpmbuild -bb php.spec
    =======================
    cat: /usr/include/httpd/.mmn: No such file or directory
    error: Failed build dependencies: httpd-devel >= 2.0.46-1 is needed by php-5.1.4-1.esp1.i386
    libc-client-devel is needed by php-5.1.4-1.esp1.i386
    postgresql-devel is needed by php-5.1.4-1.esp1.i386
    net-snmp-devel is needed by php-5.1.4-1.esp1.i386
    =======================

    Thanks,

    Ratana

  30. Amanda Gillespie Says:

    Sheesh, this is why people think Linux is hard (including me). I’ve been dumped into a Sysadmin position with virtually no experience (I know — don’t even go there!). We are running RHEL 3 (and no, it can’t be updated for some reason).

    I’ve been trying to install PHP 5 (currently have PHP4) so I can get Apache2 to run 4 and 5 concurrently. I can’t delete PHP 4 because some apps require it, and I need PHP 5 for some other apps.

    I can’t get up2date to work - something about all the registration channels being full.

    I tried the steps above and got a whole bunch of dependency failures… so now what? (This whole thing has me close to tears!)

  31. vivek Says:

    Amanda,

    Upgrade your Linux distro to RHEL 5, as support for PHP4 is dead (deadline is 31, Dec - 2007). After that no one will support or update php 4. This is how to only tested on RHEL 4 and it is not supported by Red hat. Tell you developers / users that they must upgrade application to php 5.

    Hope this helps.

  32. Mike Says:

    When I compile I get an error, I’am using RHEL 4

    D/php-5.1.4/TSRM -I/usr/src/redhat/BUILD/php-5.1.4/build-cgi/ -I/usr/include -O2 -g -pipe -m64 -o ext/ldap/ldap.la -export-dynamic -avoid-version -prefer-pic -module -rpath /usr/src/redhat/BUILD/php-5.1.4/build-cgi/modules -L/usr/kerberos/lib -L/usr/kerberos/lib64 ext/ldap/ldap.lo -lldap -llber
    /usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/libc-client.a(osdep.o): relocation R_X86_64_32 against `a local symbol’ can not be used when making a shared object; recompile with -fPIC
    /usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/libc-client.a: could not read symbols: Bad value
    collect2: ld returned 1 exit status
    make: *** [ext/imap/imap.la] Error 1
    make: *** Waiting for unfinished jobs….
    error: Bad exit status from /var/tmp/rpm-tmp.90947 (%build)

    I also tried to us FC6 as suggested above but had a depency problem on something called sqlite-devel
    which I think doesn’t exist on RHEL

  33. Dave Says:

    Where can I can find which version of Redhat support what versions of PHP? Is there a roadmap?

  34. IA64 PHP5 FOR RHEL4 Says:

    I want to installed php-5 ia64 bit on RHEL4.please send me a php5 rpm.ia64

  35. INF[SZ] Says:

    Enable centosplus repo for install php 5 on RHEL 4

    Link: to download php5 for RHEL4 /CentOS 4

Leave a Reply

We encourage your comments, and suggestions. But please stay on topic, be polite, and avoid spam. Thank you very much for stopping by our site!

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word

Tags: , , , , , , , , , ,

Copyright © 2004-2008 nixCraft. All rights reserved - TOS/Disclaimer - Privacy policy - Sitemap - Powered by Open source software.