Building PHP with MySQL–bug!

What kind of bug is this? When trying to build PHP on Linux using the option --with-mysql=/usr, I kept getting an error during make. Specifically, this was:

ext/mysql/php_mysql.c:1158: undefined reference to 'mysql_create_db' ext/mysql/php_mysql.c:1200: undefined reference to 'mysql_drop_db'

It appears that if you touch ext/mysql/php_mysql.c, updating the file’s modification time, the problems magically disappear. Crazy, huh? It must be forcing make to recompile this file. Silly? Very. But it works.

Read.