|
|
CentOS 6.5
MySQL-5.5.25
Apache-2.4.7
PHP-5.3.28
PHP 컴파일시 아래와 같은 에러가 발생하여 한참 고생하여 해결 방법을 찾았다.
에러가 나는 컴파일 옵션은 다음과 같다.
--with-mysqli=/설치디렉토리/mysql/bin/mysql_config \
--with-pdo-mysql=/설치디렉토리/mysql \
물론 이 에러가 발생하여 구글 검색 후 위의 옵션을 삭제하고
--enable-embedded-mysqli=shared \ 이 옵션으로 대체하니까 에러 없이 해결은 되었으나 근본적인 해결 방법은 아니었다.
그래서 다음과 같이 아래의 디렉토리에서 심볼릭 링크을 만들어 주고 작업하니 에러없이 깔끔하게 성공 하였다.
위의 옵션은 MySQL 라이브러리 파일과 PHP 확장 모듈 ../ext/mysqli 에서 요구하는 아래의 라이브러리가 버전이 맞지 않아 생기는 현상이므로 다음과 같이 두개의 파일을 심볼리 링크를 걸어 두니까 컴파일시 해결 되었다.
so.18 --> so.16
]# ../../mysql/lib
-rw-r--r--. 1 mysql mysql 8423514 2014-03-16 09:49 libmysqlclient.a
lrwxrwxrwx. 1 mysql mysql 20 2014-03-16 09:51 libmysqlclient.so -> libmysqlclient.so.18
lrwxrwxrwx. 1 root root 45 2014-03-16 11:45 libmysqlclient.so.16 -> /설치디렉토리/mysql/lib/libmysqlclient.so.18.0.0
lrwxrwxrwx. 1 mysql mysql 24 2014-03-16 09:51 libmysqlclient.so.18 -> libmysqlclient.so.18.0.0
-rwxr-xr-x. 1 mysql mysql 4579751 2014-03-16 09:49 libmysqlclient.so.18.0.0
lrwxrwxrwx. 1 mysql mysql 16 2014-03-16 09:51 libmysqlclient_r.a -> libmysqlclient.a
lrwxrwxrwx. 1 mysql mysql 17 2014-03-16 09:51 libmysqlclient_r.so -> libmysqlclient.so
lrwxrwxrwx. 1 root root 47 2014-03-16 11:47 libmysqlclient_r.so.16 -> /설치디렉토리/mysql/lib/libmysqlclient_r.so.18.0.0
lrwxrwxrwx. 1 mysql mysql 17 2014-03-16 09:51 libmysqlclient_r.so.18 -> libmysqlclient.so
lrwxrwxrwx. 1 mysql mysql 17 2014-03-16 09:51 libmysqlclient_r.so.18.0.0 -> libmysqlclient.so
-rw-r--r--. 1 mysql mysql 9544 2014-03-16 09:48 libmysqlservices.a
drwxr-xr-x. 3 mysql mysql 4096 2014-03-16 09:51 plugin
============================
에러 메세지
checking for MySQL support... no checking for specified location of the MySQL UNIX socket... no checking for MySQLi support... yes checking whether to enable embedded MySQLi support... no checking for mysql_set_server_option in -lmysqlclient... no configure: error: wrong mysql library version or lib not found. Check config.log for more information.