ID: 41908 User updated by: christian at hoffie dot info Reported By: christian at hoffie dot info -Status: Feedback +Status: Open Bug Type: Compile Failure Operating System: Gentoo Linux PHP Version: 5.2.3 New Comment:
>>does appending -O0 after user-supplied flags not lead to the >>expected result (building with -O0 and not -O2 for instance)? > Apparently it doesn't. Don't know if I undestood you correctly -- that CFLAGS manipulation using sed is there because CFLAGS="-O2 -O0" doesn't lead to code being built with -O0, right? > What does you config.log say about the reason of the failure? config.log: [...] configure:106983: checking for object suffix configure:106989: gcc -c s -O0 -g -Wall conftest.c 1>&5 gcc: s: No such file or directory (this is the last time this message appears and causes the configure run abort; it happens multiple times as expected, as CFLAGS="s" is simply wrong; full config.log at http://home.hoffie.info/php-5.2.3-debug-Os-config.log) Previous Comments: ------------------------------------------------------------------------ [2007-07-06 09:02:25] [EMAIL PROTECTED] >does appending -O0 after user-supplied flags not lead to the >expected result (building with -O0 and not -O2 for instance)? Apparently it doesn't. What does you config.log say about the reason of the failure? ------------------------------------------------------------------------ [2007-07-05 17:06:17] christian at hoffie dot info Description: ------------ PHP's configure script incorrectly manipulates CFLAGS and CXXFLAGS when running with --enable-debug or --enable-gcov. When CFLAGS or CXXFLAGS contains -Os (optimize for size), the configure script builds a bad list of CFLAGS/CXXFLAGS and as such configure fails in a later stage. I created a small patch[1] which should solve that, I'm not completely sure whether it's a good idea to remove that -O stuff at all -- does appending -O0 after user-supplied flags not lead to the expected result (building with -O0 and not -O2 for instance)? [1] http://overlays.gentoo.org/proj/php/browser/patches/php-patches/5.2.3/5.2.3/php5.2.3-configure-Os-fix.patch?rev=1237 Reproduce code: --------------- CFLAGS="-Os" ./configure --enable-debug (same if you replace CFLAGS by CXXFLAGS or --enable-debug with --enable-gcov) Actual result: -------------- [EMAIL PROTECTED] /tmp/php-5.2.3 $ env | grep FLAGS CXXFLAGS=-Os CFLAGS=-Os [EMAIL PROTECTED] /tmp/php-5.2.3 $ ./configure --disable-all --enable-debug [...] Configuring libtool checking build system type... i686-pc-linux-gnu checking for ld used by gcc... /usr/i686-pc-linux-gnu/bin/ld checking if the linker (/usr/i686-pc-linux-gnu/bin/ld) is GNU ld... yes checking for /usr/i686-pc-linux-gnu/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/bin/nm -B checking how to recognise dependent libraries... pass_all checking for object suffix... configure: error: installation or configuration problem; compiler does not work Depending on ./configure options the output looks different. For example, with --with-xml you will see a libxml2 failure first. ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=41908&edit=1