From Bugzilla Helper: User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705) Description of problem: I installed Red Hat 9 on my server, and discovered that I couldn't compile PHP when mysql was being integrated into it. I dropped the server back down to Red Hat 8 and it worked fine, then when I Upgraded the server back to RH9, Apache stopped loading because of the PHP module wiht the MySQL integrated into it. The component PHP was complaining about was the GLIBC component. When I tried installing an earlier version of the glibc component from the RH8 disks to force it to use an earlier version, it just complained that there were conflicts wiht the package, or that a newer version was already installed. I tried the same thing on my main system (not my server) which has an Athlon XP 2100+ inside, but I got the same errors. System specs: AMD Athlon 800 Red Hat 9 Apache 2.0.44 PHP 4.3.1 glibc-2.3.2-80 Version-Release number of selected component (if applicable): glibc-2.3.2-80 How reproducible: Always Steps to Reproduce: 1. configure php with mysql integration 2. 3. Additional info:
here's the error message that I get when compiling PHP: ext/mysql/libmysql/my_lib.lo(.text+0x3d1): In function `my_dir': /root/php-4.3.1/ext/mysql/libmysql/my_lib.c:169: undefined reference to `errno' ext/mysql/libmysql/my_lib.lo(.text+0x5ef): In function `my_stat': /root/php-4.3.1/ext/mysql/libmysql/my_lib.c:588: undefined reference to `errno' ext/mysql/libmysql/my_malloc.lo(.text+0xde): In function `my_malloc': /root/php-4.3.1/ext/mysql/libmysql/my_malloc.c:24: undefined reference to `errno' ext/mysql/libmysql/my_realloc.lo(.text+0xd5): In function `my_realloc': /root/php-4.3.1/ext/mysql/libmysql/my_realloc.c:44: undefined reference to `errno' ext/mysql/libmysql/my_delete.lo(.text+0x86): In function `my_delete': /root/php-4.3.1/ext/mysql/libmysql/my_delete.c:16: undefined reference to `errno' ext/mysql/libmysql/my_tempnam.lo(.text+0x89):/root/php-4.3.1/ext/mysql/libmysql/my_tempnam.c:108: more undefined references to `errno' follow collect2: ld returned 1 exit status make: *** [sapi/cli/php] Error 1 Also, after checking the glib version, it's glibc-2.3.2-27.9
This is just an indication that somebody isn't able to program. Recompile whatever package contains the files which claim the undefined references after adding #include <errno.h> to them. ISO C forever and clearly says that the header must be included since errno can be a macro.