Upgrading to PHP 5.2.3 on RHEL and CentOS

June 1, 2007 by · 56 Comments 

PHP 5.2.3 has been released. This version does not have the massive number of bug fixes that came with 5.2.2 (which included many of the patches from the Month of PHP Bugs), but it does have some useful fixes included, including the fix for the HTTP_RAW_POST_DATA bug that was introduced in PHP 5.2.2.

This build was relatively straight forward and didn't require any modifications to the spec file from my build of 5.2.2. I'll probably do a respin when MySQL 5.0.42 is finally marked as "released" (the source package is already available but the changelog hasn't been updated with an official release date).

For those that like to build from source, feel free to use the Source RPM from the link below. For my repository users, the new version is already available and all you'll need to do is run a "yum update".

UPDATE (6/19/2007): The PHP 5.2.3 packages have been updated. The Source RPM link below has also been updated to prevent anyone from downloading an out-of-date file.

PHP 5.2.3 Release Notes / Changelog

Update (9/24/2009): Packages deleted, use the yum repository instead.

Comments

56 Responses to “Upgrading to PHP 5.2.3 on RHEL and CentOS”
  1. dbembibre says:

    Hey Jason i think that is a great idea put a link the the spec file only.
    I have my own php package but i have curiosity to see your spec only for compate porpouses :)

    Best regards from Spain and very good job

  2. Ralf Braga says:

    Hi,

    Any doubt, with the packages .src.rpm I have what compile or running rpm sintaxe ?

    thanks

    Ralf Braga

  3. dbembibre says:

    You have the binaries in the yum repo (is the easy way)
    http://www.jasonlitka.com/yum-repository/

    If you want compile the src rpm yourseld here are the directions.

    mkdir /usr/src/redhat
    chmod -R 777 /usr/src/redhat

    rpm -ivh php-5.2.3-jason.1.src.rpm

    cd /usr/src/redhat/SPECS/

    here you have a file dot spec with the configure and build lines.

    rpmbuild -bb name_of_your_package.spec (in this case i think that is PHP)

    when all finish right you have one or many package in the RPMS folder, you need update your current rpms with this, with the following command.

    rpm -Uvh name_of_package_output.rpm

    Excuse my broken english

  4. Remi says:

    Hi

    You probably missed than Makefile of php-5.2.3 have changed.
    No need to make install-cli as make install copy php and php-cgi.
    Using old solution overwrite php-cgi with php (cli version, not cgi one)

    You should change from
    # Install everything from the CGI SAPI build
    pushd build-cgi
    make install INSTALL_ROOT=$RPM_BUILD_ROOT
    mv $RPM_BUILD_ROOT%{_bindir}/php $RPM_BUILD_ROOT%{_bindir}/php-cgi
    # Install the CLI SAPI as /usr/bin/php
    make install-cli INSTALL_ROOT=$RPM_BUILD_ROOT
    popd

    To
    # Install everything from the CGI SAPI build
    make -C build-cgi install INSTALL_ROOT=$RPM_BUILD_ROOT

  5. Yanglong Zhu says:

    Jason, Your service is greatly appreciated.
    After following your instructions on updating my PHP package to 5.2.3, I got these 4 lines of error messages about dependency. Could you help me to resolve?

    Error: Missing Dependency: php = 4.3.9-3.22.5 is needed by package php-domxml
    Error: Missing Dependency: httpd-mmn = 20020903 is needed by package mod_authz_ldap
    Error: Missing Dependency: httpd-mmn = 20020903 is needed by package mod_auth_pgsql
    Error: Missing Dependency: httpd-mmn = 20020903 is needed by package mod_auth_mysql
    Error: Missing Dependency: httpd-mmn = 20020903 is needed by package mod_auth_kerb

    I am running a version of RHEL 4.x, Scientific Linux 4.3. SL 4.3 updates packages very slowly. At the moment, there is nothing for PHP 5. I hope you could help me to resolve the dependencies. Thanks a lot.

    Yanglong

  6. Yanglong Zhu says:

    Another piece of info about my update. I am using yum, since SL 4.3 has the up2date purposely broken in favor of yum.

  7. Diego says:

    How can I "recompile" the native php from CentOS 5. I neesd add the Sybase support.
    thx
    []'s

  8. Jason says:

    @Yanglong Zhu

    The mod_* packages you mentioned are plugins for Apache's httpd and were compiled for 2.0.58, not 2.2.4 (which is what is in my repo). I don't use those packages and no one has actually requested that I build them, so they are not included in my repositories. You will need to remove those packages if you want to use my packages.

    @Jacek

    Packages are up now, a post announcing the addition is forthcoming...

    @Diego

    You might start by downloading the src.rpm from CentOS 5 and then opening up the spec file to see how the other packages are built. You can then replicate that code to build the module you need.

  9. Vaibhav says:

    Hi there,

    I am trying to compile php5 with this source rpm and after giving the rpmbuild –ba php.spec command it remains idle after showing the following out put.
    I was waiting to get it done for about 8 hours but still nothing has happened.
    Please let me know if I am doing something wrong.

    =====================================================================
    CWD : /usr/src/redhat/BUILD/php-5.2.3
    PHP : /usr/src/redhat/BUILD/php-5.2.3/build-apache/sapi/cli/php
    PHP_SAPI : cli
    PHP_VERSION : 5.2.3
    ZEND_VERSION: 2.2.0
    PHP_OS : Linux - Linux rh64.stabletransit.com 2.6.9-42.0.10.ELsmp #1 SMP Fri Feb 16 17:13:42 EST 2007 x86_64
    INI actual : /usr/src/redhat/BUILD/php-5.2.3
    More .INIs :
    Extra dirs :
    =====================================================================
    TIME START 2007-06-14 06:55:48
    =====================================================================
    PASS EXPECT [tests/run-test/test001.phpt]
    PASS EXPECTF [tests/run-test/test002.phpt]
    PASS EXPECTREGEX [tests/run-test/test003.phpt]
    PASS INI section allows '=' [tests/run-test/test004.phpt]
    TEST 5/2023 [tests/run-test/test005.phpt]

  10. alex says:

    Just a question, could you enable fastcgi as well, because im using lighttpd with php.

    From what I can see fastcgi is not enabled in this binary, but i'd like to use it.

    And thanks for making this available :)

  11. Jason says:

    @alex

    It looks like the php-cgi binary broke in this update. I'll have it fixed later tonight or tomorrow morning. Just wait for the next update.

  12. Al says:

    Jason,
    I am unable to install php-pgsql from your repository: Error: Missing Dependency: libpq.so.3 is needed by package php-pgsql

    I have libpq.so.4

    What can I do to resolve this?

  13. Rafi says:

    Hi Jason,

    I also am getting error messages like:

    Error: Missing Dependency: httpd-mmn = 20020903 is needed by package mod_auth_mysql

    while upgrading my CentOS Php from 5.1.6 to 5.2.3. Can you please atleast include packages like mod_auth_mysql, mod_dav_svn, mod_python, mod_ssl & mod_perl . This will help many of us a lot, because most of the time we are using such plugins with our httpd.

    thanks,
    --rafi

  14. Jason says:

    @Al

    I do not use any of the packages in the centosplus repo when I compile these RPMs. You can either revert to the version of PostgreSQL in the main CentOS repo or you can download my php src.rpm and build the packages on your own for your version of PostgreSQL.

    @Rafi

    Updated versions of mod_python, mod_ssl, and mod_perl have all been in my repository since day-one. mod_dav_svn (and the rest of Subversion) was added later due to popular request. I do not use mod_auth_mysql so unless someone else expresses interest I probably won't add it. There is, however, nothing stopping you from rebuilding that package yourself in the short term. Minor updates of httpd (say, from 2.2.3 to 2.2.4) do not generally require extensions to be recompiled.

  15. Juca says:

    can you help me?
    i´m trying compile this rpm and:
    [[email protected] source]# rpm -Uvh php-5.2.3-jason.2.src.rpm
    1:php warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    ########################################### [100%]
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root
    warning: user brewbuilder does not exist - using root
    warning: group brewbuilder does not exist - using root

    thank you.

  16. Jason says:

    @Juca

    As has been mentioned several times here, those are warnings, not errors, and they can be ignored.

  17. The build seems to depend on SQLite being there, where do you get sqlite-devel on RHEL4? I have tried DAG, but their RHEL4 repository only has 2.x where your SRPM calls for >3.0.

  18. I have compiled SQLite from a CentOS SRPM, but hit a different problem. Your SRPM seems to require PCRE >6 where RHEL4 has 4.5. And a lot fo tyhings actually depend on PCRE, so upgrading it is scary. How did you resolve this?

  19. Jason says:

    SQLite is required for the use of 'yum'. There are links to 32- and 64-bit versions on my "Yum Repository" page.

    http://www.jasonlitka.com/yum-repository/

    As to the dependency on PCRE 6, there are packages to cover that dep in my repo as well. Thus far I have not run into any issues using the newer version.

  20. john says:

    Hi, thanks for your tutorial and repo.
    I´ve folowwed your instructions on adding your repo to yum, and did a yum install php, but this warning has come:
    ---> Package compat-readline43.i386 0:4.3-3 set to be updated
    --> Running transaction check
    --> Processing Dependency: libc-client.so.0 for package: php-imap
    --> Finished Dependency Resolution
    Error: Missing Dependency: libc-client.so.0 is needed by package php-imap

    Can you help me ?
    thanks

  21. john says:

    forget to mention I´m on centos5

  22. Jason says:

    @john,

    All of the packages in my repository are for RHEL/CentOS 4, not 5. I am considering expanding to EL5 but until then you'll need to build any of the updated packages from my src.rpms.

  23. Shai says:

    hello, thank you very very much for your willing to help and guides regards this subject.

    i'm having the exact situation of: Vaibhav

    CentOS 4.5 , yum been fully centosplus updated, while building php, pcre 6.6 was required.
    it been installed successfully as far as i can see, then ran the builder for php,

    and got the same result as Vaibhav ..

    PASS EXPECT [tests/run-test/test001.phpt]
    PASS EXPECTF [tests/run-test/test002.phpt]
    PASS EXPECTREGEX [tests/run-test/test003.phpt]
    PASS INI section allows '=' [tests/run-test/test004.phpt]
    TEST 5/1968 [tests/run-test/test005.phpt]

  24. Jason says:

    @Shai,

    Have you tried the updated src.rpm from the link below? Are you building as 'root' or another user?

    http://www.jasonlitka.com/2007/06/19/php-523-packages-updated/

  25. Shai says:

    @Jason thank you for the fast reply :)
    yes, tried the updated src rpm,
    tried from 'root' and as 'user',

    now i tried: 'yum install php-5.2.3-jason.2.i386.rpm' (not the src),

    and i got:
    --> Finished Dependency Resolution
    Error: Missing Dependency: httpd-mmn = 20051115 is needed by package php
    Error: Missing Dependency: php-common = 5.2.3-jason.2 is needed by package php
    Error: Missing Dependency: php = 5.1.6-3.el4s1.7 is needed by package php-devel
    Error: Missing Dependency: php-cli = 5.2.3-jason.2 is needed by package php

    well as you can guess, i'm pretty much a beginner, and this subject is kind of importent to me.
    if i could assist you, with re-writing a "beginners" guide. (from beginner's pointview) , or mirror your files on my server's free resources,
    i would.

    thanks in advance.
    shai.

  26. Jason says:

    @Shai,

    PHP is packaged as multiple RPMs with lesser-used functionality farmed out of the 'php', 'php-cli', and 'php-common' packages. In addition, as an Apache module, PHP is compiled for a specific version of httpd. In this case, the packages in my repo are compiled for 2.2.4 (which is not what you're using as per the first error in your latest comment).

    The second and fourth errors you reported are because the 'php' package has a dependency on 'php-common' and 'php-cli'. You must install all three of those in a single transaction.

    Finally, the third error you posted is a result of your having PHP 5.1.6 already installed but not including updated versions of all of the already-installed packages in your "update" statement.

    My suggestions would be as follows (pick only one):
    1. Add my yum repository to your system and run "yum update".
    2. Compile the src.rpm package as a user (not 'root') so that the dependencies on httpd 2.2.4 don't exist and then install the updated versions on your system.

    Since you seem to be having problems with the latter you may have to go with #1. Just be warned that that will upgrade not only PHP but also httpd, mysql, apr, apr-util, pcre, and subversion (if you have it installed).

  27. Jason says:

    @Shai,

    With regards to what? That instruction line is already present on the "Yum Repository" page.

  28. Shai says:

    Jason, you didn't see my previous post?
    i described what i understood from the repository, maybe because i used external links..

    edited:

    ok Jason, i’ll just describe everything i do.. you tell me where i got it wrong..
    1. restore server’s image. (CentOS 4.5)
    2:(.repo file with centosplus enabled)
    wget -N htt:p/FROM-MY-HTTP/CentOS-Base.repo
    cp –reply=yes CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo
    yum update

    (your utterramblings.repo file)
    rpm –import htt:p/www.jasonlitka.com/media/RPM-GPG-KEY-jlitka
    wget -N htt:p/FROM-MY-HTTP/utterramblings.repo
    cp –reply=yes utterramblings.repo /etc/yum.repos.d/utterramblings.repo

    yum install wget nano make autoconf automake rpm-build postfix fileutils file libtool gcc cpp gcc-c perl-DBI readline-devel libc-client-devel libstdc -devel bzip2-devel curl-devel db4-devel expat-devel gmp-devel aspell-devel httpd-devel libjpeg-devel libpng-devel pam-devel openssl-devel sqlite-devel zlib-devel pcre-devel krb5-devel cyrus-sasl-devel openldap-devel postgresql-devel unixODBC-devel libxml2-devel net-snmp-devel libxslt-devel libxml2-devel expat-devel ncurses-devel gd-devel freetype-devel

    yum update

    ===============================================================
    htt:p/www.jasonlitka.com/yum-repository/

    what i did wrong ? what i missed ?
    (as you can guess, after the last yum update i dont have php 5.2.X .. i have 5.1.6)

    i read all your guides several times,AND comments, and frankly….. as a beginners point view i really understood nothing from the process.. some of the process starts in 1 guide, other in previous guides.. and so on.
    if you would like i don’t mind to give the beginners view aspect to a ‘overall’ guide.. (ofcourse, after i for myself sort everything out)

    thanks in advance, Shai.

    added:
    rpm -import htt:p/www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

  29. Jason says:

    Well, for starters, you really shouldn't be enabling centosplus, particularly if you've got the 'protectbase' or 'priority' yum plugins installed.

    Next, although this doesn't really have anything to do with it, installing all of those packages with yum is unnecessary if you aren't going to be compiling from source, particularly since the version of 'postgresql-devel' from 'centosplus' is newer than the one in my repo (I do not compile against RPMs from outside the 'base' and 'update' repos unless absolutely necessary).

    If you are starting with a clean CentOS 4.5 system then all you should need to do is to do is:
    - "rpm --import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka"
    - "nano -w /etc/yum.repos.d/utterramblings.repo"
    - Copy in the text from the "Yum Repository" page and save.
    - Run "yum update".

    When you run that update statement you should see something like the following:
    Setting up Update Process
    Setting up repositories
    utterramblings 100% |=========================| 951 B 00:00
    centos4-base 100% |=========================| 1.1 kB 00:00
    centos4-updates-released 100% |=========================| 951 B 00:00
    Reading repository metadata in from local files
    primary.xml.gz 100% |=========================| 90 kB 00:00

    If you don't get that then the repo isn't enabled.

  30. Fajar says:

    jason, i think your php-imap is broken. i get his message when launching pear and it doesn't get detected by maia.
    PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/imap.so' - /usr/lib64/php/modules/imap.so: undefined symbol: auth_gss in Unknown on line 0

  31. Jason says:

    @Fajar,

    From the path you provided it looks like you're running the 64-bit version. You're using httpd 2.2.4 from my repo as well, right? When you run a phpinfo() does it include an "imap" section?

    I just installed the "php-imap" package on my 64-bit test box and wrote up a small script to open a connection via IMAP, get a folder list, send a test message, check for existing mail headers in the inbox, and then close the connection. That script ran fine, so if there is a problem with the extension, it must be in some eclectic corner because all of the main stuff works. I also use the 32-bit version on a few of my vBulletin sites for one of the plugins I've got installed and they work as well.

  32. Shane says:

    Jason,

    I keep getting "Error: Missing Dependency: php = 5.1.6 is needed by package php-eaccelerator". Is there any way for you to include an update for php-eaccelerator as well or is there some work-around I am missing?

    Thanks,
    Shane

  33. Jason says:

    @Shane,

    PHP extensions are tied to the version they were compiled against. While it is generally possible to reuse them for point updates, for example 5.2.0 to 5.2.1, larger jumps require recompilation.

    In this case, I do not provide a package for eAccelerator. However, I do have a package for XCache; a PHP cacher that I believe works a bit better than eA. I would recommend that you remove your 'php-eaccelerator' package and install 'php-xcache' instead.

  34. Brad says:

    I have just upgraded all my php, http, svn to your yum repository packages on a centos4 box. I would like to compile mod_authz_ldap (as Yanglong Zhu was looking to do above), but came up with an error "apr.h: No such file of directory". Anyway, I was wondering if you had any ideas here. Beginning of Make output below.

    [mod_authz_ldap-0.26]$ make
    make all-recursive
    make[1]: Entering directory `/home/****/build/mod_authz_ldap-0.26'
    Making all in module
    make[2]: Entering directory `/home/****/build/mod_authz_ldap-0.26/module'
    if /bin/sh ../libtool --mode=compile `/usr/sbin/apxs -q CC` -DHAVE_CONFIG_H -I. -I. -I.. -I`/usr/sbin/apxs -q INCLUDEDIR` -I/include -DAUTHZ_LDAP_HAVE_SSL `/usr/sbin/apxs -q CFLAGS` `/usr/sbin/apxs -q CFLAGS_SHLIB` -g -O2 -MT mod_authz_ldap_la-auth.lo -MD -MP -MF ".deps/mod_authz_ldap_la-auth.Tpo" \
    -c -o mod_authz_ldap_la-auth.lo `test -f 'auth.c' || echo './'`auth.c; \
    then mv -f ".deps/mod_authz_ldap_la-auth.Tpo" ".deps/mod_authz_ldap_la-auth.Plo"; \
    else rm -f ".deps/mod_authz_ldap_la-auth.Tpo"; exit 1; \
    fi
    gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/httpd -I/include -DAUTHZ_LDAP_HAVE_SSL -O2 -g -march=i386 -mcpu=i686 -g -O2 -MT mod_authz_ldap_la-auth.lo -MD -MP -MF .deps/mod_authz_ldap_la-auth.Tpo -c auth.c -fPIC -DPIC -o .libs/mod_authz_ldap_la-auth.o
    In file included from /usr/include/httpd/httpd.h:43,
    from mod_authz_ldap.h:11,
    from auth.c:12:
    /usr/include/httpd/ap_config.h:25:17: apr.h: No such file or directory
    /usr/include/httpd/ap_config.h:26:23: apr_hooks.h: No such file or directory
    /usr/include/httpd/ap_config.h:27:32: apr_optional_hooks.h: No such file or directory
    In file included from /usr/include/httpd/httpd.h:46,
    from mod_authz_ldap.h:11,
    from auth.c:12:
    /usr/include/httpd/ap_release.h:25:41: apr_general.h: No such file or directory
    In file included from mod_authz_ldap.h:11,
    from auth.c:12:
    /usr/include/httpd/httpd.h:50:24: apr_tables.h: No such file or directory
    /usr/include/httpd/httpd.h:51:23: apr_pools.h: No such file or directory
    ...

    Thanks for the repositories.

  35. Jason says:

    @Brad,

    Did you install 'apr-devel'?

  36. Brad says:

    Sorry I forgot to mention that. Yes, I did; I also installed httpd-devel. I even tried sym-linking the apr files into the httpd dir and still got the following error:

    mod_authz_ldap-0.26]$ make
    make all-recursive
    make[1]: Entering directory `/home/bjb3/build/mod_authz_ldap-0.26'
    Making all in module
    make[2]: Entering directory `/home/bjb3/build/mod_authz_ldap-0.26/module'
    if /bin/sh ../libtool --mode=compile `/usr/sbin/apxs -q CC` -DHAVE_CONFIG_H -I. -I. -I.. -I`/usr/sbin/apxs -q INCLUDEDIR` -I/include -DAUTHZ_LDAP_HAVE_SSL `/usr/sbin/apxs -q CFLAGS` `/usr/sbin/apxs -q CFLAGS_SHLIB` -g -O2 -MT mod_authz_ldap_la-auth.lo -MD -MP -MF ".deps/mod_authz_ldap_la-auth.Tpo" \
    -c -o mod_authz_ldap_la-auth.lo `test -f 'auth.c' || echo './'`auth.c; \
    then mv -f ".deps/mod_authz_ldap_la-auth.Tpo" ".deps/mod_authz_ldap_la-auth.Plo"; \
    else rm -f ".deps/mod_authz_ldap_la-auth.Tpo"; exit 1; \
    fi
    gcc -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/httpd -I/include -DAUTHZ_LDAP_HAVE_SSL -O2 -g -march=i386 -mcpu=i686 -g -O2 -MT mod_authz_ldap_la-auth.lo -MD -MP -MF .deps/mod_authz_ldap_la-auth.Tpo -c auth.c -fPIC -DPIC -o .libs/mod_authz_ldap_la-auth.o
    In file included from /usr/include/httpd/apr.h:7,
    from /usr/include/httpd/ap_config.h:25,
    from /usr/include/httpd/httpd.h:43,
    from mod_authz_ldap.h:11,
    from auth.c:12:
    /usr/include/httpd/apr-i386.h:270: error: syntax error before "apr_off_t"
    /usr/include/httpd/apr-i386.h:270: warning: data definition has no type or storage class
    In file included from /usr/include/httpd/apr_file_io.h:29,
    from /usr/include/httpd/apr_network_io.h:26,
    from /usr/include/httpd/httpd.h:53,
    from mod_authz_ldap.h:11,
    from auth.c:12:
    /usr/include/httpd/apr_file_info.h:204: error: syntax error before "apr_off_t"
    /usr/include/httpd/apr_file_info.h:204: warning: no semicolon at end of struct or union
    /usr/include/httpd/apr_file_info.h:206: warning: data definition has no type or storage class
    /usr/include/httpd/apr_file_info.h:219: error: syntax error before '}' token
    ...

  37. Jason says:

    @Brad,

    Sorry, I really don't have an answer for you on that. I'll take a look at that package this week if I have some time but no guarantees.

  38. Brad says:

    @Jason

    Thanks, I'm close to getting it working with the mod_authnz_ldap module, which as it turns out is native apache; notice the authnz instead of authz. I appreciate all of the work you've put in on your repositories.

    Brad

  39. paul says:

    nice job, i like your mod_secutiry and PHP

  40. Paul says:

    After installing your PHP5.2 I got the following error:

    httpd: Syntax error on line 183 of /etc/httpd/conf/httpd.conf: Cannot load /etc/httpd/modules/mod_status.so into server: /etc/httpd/modules/mod_status.so: un
    defined symbol: ap_mod_status_reqtail

    I have to comment out this line in httpd.conf to restart apache:
    #LoadModule status_module modules/mod_status.so

    Can you tell me if I did something wrong or you can fix it?

    Thanks,
    Pau

  41. Brad:

    Your compilation problem can be mitigated installing apr-devel and then making some symlinks in the httpd-devel directory.
    Basically, the problem is that httpd headers have incorrect declarations:

    #include "apr.h"

    instead of

    #include

    So the httpd headers are looking for apr.h (and other apr headers) on its own directory, instead of looking for them on the real apr headers directory.
    To fix that, you can 1) rewrite all include statements to correct the issue in the httpd headers, or 2) you can make symlinks from /usr/include/apr-1/* to /usr/include/httpd/

    ln -s /usr/include/apr-1/* /usr/include/httpd/

    That will fix it. Now you can compile php with no problem.
    I hope it helps you.

    Cheers,
    Gustavo.

  42. Brad:

    Sorry, HTML have messed up my code snippet. The declaration must be:

    #include <apr.h>

    Cheers,
    Gustavo.

  43. Gurmeet (new to this) says:

    Hi Jason,

    I am getting this while installing php 5 on centos 4.5 from ur repo;

    [[email protected] psa]# yum --enablerepo=utterramblings update php
    .............................

    --> Processing Dependency: libmysqlclient.so.14(libmysqlclient_14) for package: psa-fileserver
    --> Processing Dependency: libmysqlclient.so.14(libmysqlclient_14) for package: psa-qmail
    --> Processing Dependency: libmysqlclient.so.14(libmysqlclient_14) for package: psa-courier-imap-add
    --> Finished Dependency Resolution
    Error: Missing Dependency: php-common = 5.2.3-jason.1 is needed by package php-xml
    Error: Missing Dependency: libmysqlclient.so.14(libmysqlclient_14) is needed by package psa-qmail
    Error: Missing Dependency: libmysqlclient.so.14(libmysqlclient_14) is needed by package psa-courier-imap-add
    Error: Missing Dependency: libmysqlclient.so.14(libmysqlclient_14) is needed by package psa-fileserver

  44. scoff says:

    http://www.atomicorp.com/wiki/index.php/PHP

    upgrading php to 5.2 on centos 5 (with plesk installed)
    the most seamless way to the moment

  45. Fauzi says:

    Hi Jason,

    I also am getting error messages like:

    Error: Missing Dependency: httpd-mmn = 20020903 is needed by package mod_auth_mysql

    would you consider add that dependency

    Thanks anyway your repository save my a lot of work

  46. Dinu says:

    Here's a tutorial for building missing packages: http://www.exteon.ro/en/articles/php/compile-extensions

  47. webzenguy says:

    There is a great tutorial on installing sqlite, sqlite3 and mcrypt on Centos here: http://www.exteon.ro/en/articles/php/compile-extensions

  48. laser says:

    I am having some trouble with getting 'include' working. I have a new dedicated server running Apache 2.0.63 and PHP 5.2.6. Local includes on the same domain are running ok, but remote includes are throwing a problem. On the many sites we plan to host on this servber we use a central 'webmaster' page called as an include from a specific site (also on the same server).

    I need to edit the PHP.ini and /or recompile the PHP with the appropriate modules to do one of the following...

    1 (ideally) - allow includes from any site that is held on this dedicated server

    2. allow includes from specified websites

    3. simply allow remote includes

    right settings to get one of these

    options running and solve my problem?

Trackbacks

Check out what others are saying about this post...
  1. [...] updated the PHP 5.2.3 packages to fix a bug I introduced for the ‘php-cgi’ binary (in that it wasn’t actually a [...]

  2. Sebastian Bauer (IT-Blog) says:

    aktuelle typolight Version auf CentOS 4.5...

    Nach der Installation von typolight 2.4.0 habe ich mit dem integrierten Update-Mechnismus die aktuelle Version 2.4.5 aufgespielt. Dieses Live-Update vereinfacht die Sache wirklich sehr, und es scheint auch alles ohne Probleme zu funktionieren. Allerdin...

  3. My Pet Programmer, Inc » Blog Archive » Upgrading PHP from 4.3.9 to 5.2 on Cent OS4 says:

    [...] for >= 6.6) and a broken link to the php 5.2.2 source rpm on mirrors.kernel.org, which he fixed in this post on upgrading to 5.2.3 by providing his own source [...]

  4. Sebastian Bauer (IT-Blog) » Blog Archiv » aktuelle TYPOlight Version auf CentOS 4.5 says:

    [...] den Artikel Upgrading to PHP 5.2.3 on RHEL and CentOS bin ich auf die Seiten von Utter Ramblings gestoßen. Dort wird auch ein entsprechendes Repository [...]

  5. [...] versión, os dejo el enlace donde un blogger ha colgado los paquetes para instalarlo y explica cómo actualizar a php 5.3, básicamente os ofrece la dirección del “Source RPM” para que lo instaleis en [...]



Speak Your Mind

Tell us what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!

You must be logged in to post a comment.