[MacPorts] #21281: PHP 5.3.0_2 build failed under Mac OS X 10.6
#21281: PHP 5.3.0_2 build failed under Mac OS X 10.6 --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: PHP5 --------------------------------------+------------------------------------- OS:Mac OS X 10.6 xcode:3.2 apache2.2.13_2 build with variants:+darwin+openldap+workermpm {{{ port install php5 +apache2 +fastcgi +ipc +pear +snmp +suhosin Port command started with PID 47556 ---> Computing dependencies for php5 ---> Fetching gawk ---> Verifying checksum(s) for gawk ---> Extracting gawk ---> Configuring gawk ---> Building gawk ---> Staging gawk into destroot ---> Installing gawk @3.1.7_0 ---> Activating gawk @3.1.7_0 ---> Cleaning gawk ---> Fetching autoconf213 ---> Verifying checksum(s) for autoconf213 ---> Extracting autoconf213 ---> Configuring autoconf213 ---> Building autoconf213 ---> Staging autoconf213 into destroot ---> Installing autoconf213 @2.13_1 ---> Activating autoconf213 @2.13_1 ---> Cleaning autoconf213 ---> Fetching gsed ---> Verifying checksum(s) for gsed ---> Extracting gsed ---> Configuring gsed ---> Building gsed ---> Staging gsed into destroot ---> Installing gsed @4.2.1_0 ---> Activating gsed @4.2.1_0 ---> Cleaning gsed ---> Fetching mhash ---> Verifying checksum(s) for mhash ---> Extracting mhash ---> Configuring mhash ---> Building mhash ---> Staging mhash into destroot ---> Installing mhash @0.9.9.9_0 ---> Activating mhash @0.9.9.9_0 ---> Cleaning mhash ---> Fetching php5 ---> Verifying checksum(s) for php5 ---> Extracting php5 ---> Applying patches to php5 ---> Configuring php5 ---> Building php5 ---> Staging php5 into destroot ---> Configuring php5 again for fastcgi ---> Building php5 again for fastcgi Error: Target org.macports.destroot returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_php5/work/php-5.3.0" && /usr/bin/make all " returned error 2 Command output: _php_print_info in info.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o "_core_globals", referenced from: _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o "_compiler_globals", referenced from: _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o ld: symbol(s) not found collect2: ld returned 1 exit status make: *** [sapi/cgi/php-cgi] Error 1 Error: Status 1 encountered during processing. ---> Executing: /opt/local/bin/port install php5 +apache2 +fastcgi +ipc +pear +snmp +suhosin }}} -- Ticket URL: <http://trac.macports.org/ticket/21281> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: PHP 5.3.0_2 build failed under Mac OS X 10.6 --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: php5 --------------------------------------+------------------------------------- Changes (by macsforever2000@…): * cc: jwa@… (added) * owner: macports-tickets@… => ryandesign@… * port: PHP5 => php5 -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 5.3.0_2 undefined symbols _core_globals, _sapi_cgi_activate --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: php5 --------------------------------------+------------------------------------- Changes (by ryandesign@…): * status: new => assigned Old description:
OS:Mac OS X 10.6 xcode:3.2 apache2.2.13_2 build with variants:+darwin+openldap+workermpm {{{ port install php5 +apache2 +fastcgi +ipc +pear +snmp +suhosin Port command started with PID 47556 ---> Computing dependencies for php5 ---> Fetching gawk ---> Verifying checksum(s) for gawk ---> Extracting gawk ---> Configuring gawk ---> Building gawk ---> Staging gawk into destroot ---> Installing gawk @3.1.7_0 ---> Activating gawk @3.1.7_0 ---> Cleaning gawk ---> Fetching autoconf213 ---> Verifying checksum(s) for autoconf213 ---> Extracting autoconf213 ---> Configuring autoconf213 ---> Building autoconf213 ---> Staging autoconf213 into destroot ---> Installing autoconf213 @2.13_1 ---> Activating autoconf213 @2.13_1 ---> Cleaning autoconf213 ---> Fetching gsed ---> Verifying checksum(s) for gsed ---> Extracting gsed ---> Configuring gsed ---> Building gsed ---> Staging gsed into destroot ---> Installing gsed @4.2.1_0 ---> Activating gsed @4.2.1_0 ---> Cleaning gsed ---> Fetching mhash ---> Verifying checksum(s) for mhash ---> Extracting mhash ---> Configuring mhash ---> Building mhash ---> Staging mhash into destroot ---> Installing mhash @0.9.9.9_0 ---> Activating mhash @0.9.9.9_0 ---> Cleaning mhash ---> Fetching php5 ---> Verifying checksum(s) for php5 ---> Extracting php5 ---> Applying patches to php5 ---> Configuring php5 ---> Building php5 ---> Staging php5 into destroot ---> Configuring php5 again for fastcgi ---> Building php5 again for fastcgi Error: Target org.macports.destroot returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_php5/work/php-5.3.0" && /usr/bin/make all " returned error 2 Command output: _php_print_info in info.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o "_core_globals", referenced from: _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o "_compiler_globals", referenced from: _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o ld: symbol(s) not found collect2: ld returned 1 exit status make: *** [sapi/cgi/php-cgi] Error 1 Error: Status 1 encountered during processing. ---> Executing: /opt/local/bin/port install php5 +apache2 +fastcgi +ipc +pear +snmp +suhosin }}}
New description: OS:Mac OS X 10.6 [[BR]] xcode:3.2 [[BR]] apache2.2.13_2 build with variants:+darwin+openldap+workermpm {{{ port install php5 +apache2 +fastcgi +ipc +pear +snmp +suhosin Port command started with PID 47556 ---> Computing dependencies for php5 ---> Fetching gawk ---> Verifying checksum(s) for gawk ---> Extracting gawk ---> Configuring gawk ---> Building gawk ---> Staging gawk into destroot ---> Installing gawk @3.1.7_0 ---> Activating gawk @3.1.7_0 ---> Cleaning gawk ---> Fetching autoconf213 ---> Verifying checksum(s) for autoconf213 ---> Extracting autoconf213 ---> Configuring autoconf213 ---> Building autoconf213 ---> Staging autoconf213 into destroot ---> Installing autoconf213 @2.13_1 ---> Activating autoconf213 @2.13_1 ---> Cleaning autoconf213 ---> Fetching gsed ---> Verifying checksum(s) for gsed ---> Extracting gsed ---> Configuring gsed ---> Building gsed ---> Staging gsed into destroot ---> Installing gsed @4.2.1_0 ---> Activating gsed @4.2.1_0 ---> Cleaning gsed ---> Fetching mhash ---> Verifying checksum(s) for mhash ---> Extracting mhash ---> Configuring mhash ---> Building mhash ---> Staging mhash into destroot ---> Installing mhash @0.9.9.9_0 ---> Activating mhash @0.9.9.9_0 ---> Cleaning mhash ---> Fetching php5 ---> Verifying checksum(s) for php5 ---> Extracting php5 ---> Applying patches to php5 ---> Configuring php5 ---> Building php5 ---> Staging php5 into destroot ---> Configuring php5 again for fastcgi ---> Building php5 again for fastcgi Error: Target org.macports.destroot returned: shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_lang_php5/work/php-5.3.0" && /usr/bin/make all " returned error 2 Command output: _php_print_info in info.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o "_core_globals", referenced from: _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o "_compiler_globals", referenced from: _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o ld: symbol(s) not found collect2: ld returned 1 exit status make: *** [sapi/cgi/php-cgi] Error 1 Error: Status 1 encountered during processing. ---> Executing: /opt/local/bin/port install php5 +apache2 +fastcgi +ipc +pear +snmp +suhosin }}} -- Comment: I would need to see more output ("`sudo port -d install php5`") to be sure, but I believe php5 is not compatible with apache2's +workermpm variant. I think this is the same problem as #16596 and [http://lists.macosforge.org/pipermail/macports- users/2009-August/016059.html this mailing list post]. Please confirm whether using apache2's default +preforkmpm variant instead fixes the problem. -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails if using apache2 +preforkmpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: php5 --------------------------------------+------------------------------------- Comment(by ryandesign@…): I can now confirm the problem, which only exists when apache2 is compiled with workermpm and php5 is compiled with both the apache2 and fastcgi variants. Using either the apache2 or the fastcgi variants by themselves compiles fine, but together: {{{ Undefined symbols: "_sapi_globals", referenced from: _php_print_info in info.o _php_print_info in info.o _php_print_info in info.o _sapi_cgi_read_post in cgi_main.o _sapi_cgi_send_headers in cgi_main.o _sapi_cgibin_getenv in cgi_main.o _sapi_cgi_deactivate in cgi_main.o _sapi_cgibin_ub_write in cgi_main.o __sapi_cgibin_putenv in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_log_message in cgi_main.o _sapi_cgi_register_variables in cgi_main.o _sapi_cgi_register_variables in cgi_main.o "_executor_globals", referenced from: _php_print_gpcse_array in info.o _php_print_info in info.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o "_core_globals", referenced from: _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _cgi_php_import_environment_variables in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o _sapi_cgi_activate in cgi_main.o "_compiler_globals", referenced from: _main in cgi_main.o _main in cgi_main.o _main in cgi_main.o ld: symbol(s) not found collect2: ld returned 1 exit status make: *** [sapi/cgi/php-cgi] Error 1 }}} To build the php fastcgi binary when the php apache2 module has already been built, I just issue "make" again, which I assume fails in this case because the apache2 module was built with Zend Thread Safety ("zts") while the fastcgi binary is wanting to be built without it ("non-zts"). I could fix that by using "make clean" before building fastcgi, but it still leaves the problem that you would be installing different php parts which are not compatible with one another. In particular, all the php modules you'd want to install separately would only work for one or the other (either the apache2 module or the fastcgi binary) but not both because they would have different extensions directories. And I'm not sure how the php cli would react either. My current thought is that I should prevent the installation of the php apache module if apache has not been compiled with its default workermpm variant. I did not test what happens when using apache2's third mpm variant, eventmpm. -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails if using apache2 +preforkmpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: | Port: php5 --------------------------------------+------------------------------------- Changes (by ryandesign@…): * cc: artrigue@… (added) Comment: I'm marking #16596 as a duplicate of this one because although it came first, this one is clearer and gets right to the point. -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Changes (by ryandesign@…): * keywords: => workermpm -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Comment(by ryandesign@…): I also edited my prior comment to fix my mixup between preforkmpm and workermpm, sorry. -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Comment(by ryandesign@…): See also #20527. -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails to install and php5 modules fail to work if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Comment(by ryandesign@…): Has duplicates #21573, #21574, #21575. These are a little different: php5 modules compile but don't work if apache2 was installed with +workermpm. So the problem is not just limited to combining the +apache2 and +fastcgi variants of php5; even just using +apache2 you will have problems with modules. So we really should prevent installation of php5 +apache2 unless apache2 was installed with +preforkmpm. -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails to install and php5 modules fail to work if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Comment(by james.applemac@…): So, at this time, apache2 with workermpm cannot work with all php5-* packages in Macport 1.8 ? Am I right? -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails to install and php5 modules fail to work if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Comment(by ryandesign@…): That seems to be correct. At least, the ones you tested don't seem to work. The [http://us3.php.net/manual/en/faq.installation.php#faq.installation.apache2 #1 FAQ on the PHP installation page] is "Why shouldn't I use Apache2 with a threaded MPM in a production environment?" so I don't feel too badly about my plan to prevent this from being possible at all. Granted most MacPorts users are probably running a development server, not a production server, but still, why do you need a threaded web server on your development machine? -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails to install and php5 modules fail to work if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Comment(by ryandesign@…): r58589: php5 +apache2 now prevents installation if apache2 is not installed with +preforkmpm. Still need to update php5-devel, php52, and php4 with this change. -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:11> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails to install and php5 modules fail to work if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Comment(by ryandesign@…): * r58830: updated php5-devel with this change -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:12> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php5 +apache2 +fastcgi fails to install and php5 modules fail to work if using apache2 +workermpm --------------------------------------+------------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Keywords: workermpm | Port: php5 --------------------------------------+------------------------------------- Comment(by ryandesign@…): * r58833: updated php52 with this change -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:13> MacPorts <http://www.macports.org/> Ports system for Mac OS
#21281: php4, php52, php5, php5-devel: +apache2 +fastcgi fails to install and php5 modules fail to work if using apache2 +workermpm --------------------------------------------+------------------------------- Reporter: james.applemac@… | Owner: ryandesign@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 1.8.0 Resolution: fixed | Keywords: workermpm Port: php4, php52, php5, php5-devel | --------------------------------------------+------------------------------- Changes (by ryandesign@…): * status: assigned => closed * resolution: => fixed * port: php5 => php4, php52, php5, php5-devel Comment: * r58844: updated php4 with this change. -- Ticket URL: <http://trac.macports.org/ticket/21281#comment:14> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts