Marcus Andy Noowo: /INSTALLATION: php: configure: error: Cannot find header files

Hallo, GABELN.

Ich setze unter Suse/x86 7.3 einen DSO-Apache aus Quellen auf. Soweit das Geschehen (es kommen später noch mod_throttle und mod_gzip hinzu):

acer:~/tmp/apache_1.3.27> ./configure --prefix=/usr/local/apache --enable-shared=max
{...}
acer:~/tmp/apache_1.3.27> make
{...}
acer:~/tmp/apache_1.3.27> sudo make install
{...}
acer:~/tmp/mod_perl-1.27> perl Makefile.PL USE_APXS=1 WITH_APXS=/usr/local/apache/bin/apxs EVERYTHING=1
{...}
acer:~/tmp/mod_perl-1.27> make
{...}
acer:~/tmp/mod_perl-1.27> sudo make install
{...}
acer:~/tmp/php-4.3.1> ./configure --with-mysql --with-apxs=/usr/local/apache/bin/apxs
{...}
+--------------------------------------------------------------------+
|                        *** WARNING ***                             |
|                                                                    |
| You chose to compile PHP with the built-in MySQL support.  If you  |
| are compiling a server module, and intend to use other server      |
| modules that also use MySQL (e.g, mod_auth_mysql, PHP 3.0,         |
| mod_perl) you must NOT rely on PHP's built-in MySQL support, and   |
| instead build it with your local MySQL support files, by adding    |
| --with-mysql=/path/to/mysql to your configure line.                |
+--------------------------------------------------------------------+
{...}
                      . o O ( Hm, soso. )
acer:~/tmp/php-4.3.1> which mysql
/usr/bin/mysql
acer:~/tmp/php-4.3.1> ./configure --with-mysql=/usr/bin/mysql --with-apxs=/usr/local/apache/bin/apxs
{...}
configure: error: Cannot find header files under /usr/bin/mysql
                      . o O ( Ach, HEADER files. Wieso hast du das nicht gleich gesagt? )
acer:~/tmp/php-4.3.1> sudo rpm -i ~/susecd3/suse/ap3/mysql-devel.rpm
acer:~/tmp/php-4.3.1> ./configure --with-mysql=/usr/include/mysql --with-apxs=/usr/local/apache/bin/apxs
{...}
configure: error: Cannot find header files under /usr/include/mysql
acer:~/tmp/php-4.3.1> ls /usr/include/mysql/*.h
/usr/include/mysql/chardefs.h       /usr/include/mysql/my_sys.h
/usr/include/mysql/dbug.h           /usr/include/mysql/mysql.h
/usr/include/mysql/errmsg.h         /usr/include/mysql/mysql_com.h
/usr/include/mysql/history.h        /usr/include/mysql/mysql_version.h
/usr/include/mysql/keymaps.h        /usr/include/mysql/mysqld_error.h
/usr/include/mysql/m_ctype.h        /usr/include/mysql/raid.h
/usr/include/mysql/m_string.h       /usr/include/mysql/readline.h
/usr/include/mysql/my_config.h      /usr/include/mysql/sslopt-case.h
/usr/include/mysql/my_global.h      /usr/include/mysql/sslopt-longopts.h
/usr/include/mysql/my_list.h        /usr/include/mysql/sslopt-usage.h
/usr/include/mysql/my_net.h         /usr/include/mysql/sslopt-vars.h
/usr/include/mysql/my_no_pthread.h  /usr/include/mysql/tilde.h
/usr/include/mysql/my_pthread.h
                       . o o ( ??? )

Woran liegt's, dass configure die Dateien nicht sieht, und was kann ich jetzt tun, um vorwärts zu kommen?

  1. Holladiewaldfee,

    Woran liegt's, dass configure die Dateien nicht sieht, und was kann ich jetzt tun, um vorwärts zu kommen?

    Also bei mir wollte er nur den Pfad ins MySQL-Wurzelverzeichnis haben.
    Da ich MySQL nicht einfach so quer in den /usr-Baum verteilt habe liegt das alles bei mir unter /usr/local/mysql/. Und dann sind dann die Unterverzeichnisse ./bin und ./include drin. Vielleicht will er dann bei Dir ja auch als Pfad nur /usr/ haben?!

    Ciao,

    Harry

    --
      Hä? Was? Signatur?! Kann man das essen?
      Wirrwarr: sh:| fo:) ch:] rl:° br:& n4:° ie:% mo:) va:) de:[ zu:) fl:( ss:) ls:[ js:|
    1. Vielleicht will er dann bei Dir ja auch als Pfad nur /usr/ haben?!

      --with-mysql=/usr hat vorzüglich geklappt. Danke, Harry.

      FWIW, der Rest:
      acer:~/tmp/mod_throttle-3.1.2> sudo make install
      acer:~/tmp/mod_gzip-1.3.26.1a> sudo /usr/local/apache/bin/apxs -i -a -c mod_gzip.c