Changes between Version 1 and Version 2 of LinuxBuild


Ignore:
Timestamp:
Jan 26, 2009, 10:52:30 AM (15 years ago)
Author:
jmckenna
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • LinuxBuild

    v1 v2  
    33General information on Unix builds can be found in the UNIX Compilation and Installation HOWTO:
    44
    5   http://mapserver.gis.umn.edu/doc/unix-install-howto.html
     5  http://www.mapserver.org/installation/unix.html
    66
    77See also the MapServerCompilation page which contains links to detailed instructions for various platforms and MapServer versions.
     
    99= Build PHPMapScript on Linux =
    1010
    11 Also see PHPBuildDebugLinux. The PHPMapScript page also contains links to other resources including detailed instructions for specific platforms such as RedHat? and Debian.
     11Also see PHPBuildDebugLinux. The PHPMapScript page also contains links to other resources including detailed instructions for specific platforms such as !RedHat and Debian.
    1212
    13 Compiling MapServer and PHPMapScript in Spanish language is available on SpanishLinuxInstall.
     13Compiling !MapServer and !PHPMapScript in Spanish language is available on SpanishLinuxInstall.
    1414
    15 I finally have this all working after a long ordeal. But before I go into the details, I want to give public THANKS to Daniel Morissette of DM Solutions Group. He provided significant support and advice that enabled me to work through many issues. I seems straight forward after the fact, but it was not intuitive and I seemed to have turn down every dead end that exsisted. So Daniel, Thanks!, your assistance is greatly apreaciated.
     15I finally have this all working after a long ordeal. But before I go into the details, I want to give public THANKS to Daniel Morissette of DM Solutions Group. He provided significant support and advice that enabled me to work through many issues. I seems straight forward after the fact, but it was not intuitive and I seemed to have turn down every dead end that exsisted. So Daniel, Thanks!, your assistance is greatly appreciated.
    1616
    1717Now the details before they escape my seive of brain.
    1818
    1919My configuration:
     20{{{
    2021  RedHat 6.2, Linux 2.2.18
    2122  apache_1.3.22.tar.gz
    2223  php-3.0.18.tar.gz
    2324  mapServer 3.5 Released
     25}}}
    2426
    2527I made scripts with all the configure parameters so I could have some repeatability and to verify what I actually ran last. I also did a "make clean" and "rm config.cache" in the scripts so when I made changes I was sure they were used.
     
    2729Here are a few of the problems that I ran into:
    2830
    29 1) building things as DSO is very different than build things as static or CGI. After I got PHP3 built for debugging and found out that my multiple version of regex was causing memory structures to be miss-aligned, it still took me another half a day to get a working version to build. And worst of all the interdependance between apache/php3/mapscript is pathological at best.
     311) building things as DSO is very different than build things as static or CGI. After I got PHP3 built for debugging and
     32found out that my multiple version of regex was causing memory structures to be miss-aligned, it still took me
     33another half a day to get a working version to build. And worst of all the interdependance between apache/php
     34/mapscript is pathological at best.
    3035
    31 2) TOO many versions of regex! There is one bundled with apache, another one bundled with php3, a system version (regex.h) and an rx lib version. Everybody needs to use the SAME version. I could ONLY get things to work when I forced everyone to use the system-regex. First off if you read the WMS documentation it talks about rx lib, just forget about this (IE: Dont down load it! I did and had to uninstall it to get mapserver to build in the first place). This required finding and setting --disable-rule=WANTHSREGEX=no in apache so it does not use its bundled version.
     362) TOO many versions of regex! There is one bundled with apache, another one bundled with php3, a system
     37version(regex.h) and an rx lib version. Everybody needs to use the SAME version. I could ONLY get things to work when
     38I forced everyone to use the system-regex. First off if you read the WMS documentation it talks about rx lib, just
     39forget about this (IE: Dont down load it! I did and had to uninstall it to get mapserver to build in the first
     40place). This required finding and setting --disable-rule=WANTHSREGEX=no in apache so it does not use its bundled
     41version.
    3242
    33 For PHP3, if you are building the CGI version then you can specify --with-system-regex and your home free, BUT if your building a DSO with --with-apxs=/usr/sbin/apxs then it will look at the /usr/sbin/apxs to see if apache was built with its bundled regex and if it was then it will ignore the --with-system-regex. Also when you configure mapserver, it will look at the php's config.h file to determine if it should use the php bundled version of regex or not.
     43For PHP3, if you are building the CGI version then you can specify --with-system-regex and your home free, BUT if
     44your building a DSO with --with-apxs=/usr/sbin/apxs then it will look at the /usr/sbin/apxs to see if apache was
     45built with its bundled regex and if it was then it will ignore the --with-system-regex. Also when you configure
     46mapserver, it will look at the php's config.h file to determine if it should use the php bundled version of regex or
     47not.
    3448
    35493) Build PHP3 as a DSO. There is a nasty problem that apxs is broken. This is easily fixed if you edit /usr/sbin/apxs and search for "-shared" and insert before it "-export-dynamic " before you run make on php3. Also be aware that if you rebuild and install apache it you will need to fix apxs again.
     
    4559My scripts for apache, php3 and mapserver follow:
    4660
     61{{{
    4762[woodbri@linus linux]$ cat doit-apache
    4863make clean
     
    97112--with-apxs=/usr/sbin/apxs
    98113make
     114}}}