Live Brilliant

php : mbstring 확장 모듈생성 추가방법 본문

개발은 핵찜이야/리눅스

php : mbstring 확장 모듈생성 추가방법

주인정 2012. 4. 13. 17:47
애러내용
[root@localhost mail]# php -r 'echo base64_encode("sokj00")."n";'
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php/modules/mbstring.so'
- /usr/local/php/modules/mbstring.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/local/php/modules/mbstring.so' -
/usr/local/php/modules/mbstring.so: cannot open shared object file: No such file or directory in Unknown on line 0
c29rajAw

==========================================================================================
mbstring확장 모듈생성 방법

1. 같은 버젼의 php 소스 다운로드
2. 압축 풀고 cd PHP소스디렉토리/ext/mbstring
3. find / -name phpize
4. find / -name php-config
5. /phpize 디렉토리/phpize
6. ./configure --with-php-config=/php-config디렉토리/php-config --enable-mbstring
7. make // mbstring/modules/에 mbstring.so 생성됨
8. mbstring.so 이 화일을 php.ini 화일의 extension_dir=확장모듈 경로 <== 여기에다 옮겨줌
9. php.ini 에 extension=mbstring.so 추가
10. 아파치 재시작.. 끝....

==========================================================================================
예제
[root@localhost mbstring]# find / -name phpize
/usr/local/src/php-5.1.6/scripts/phpize
/usr/local/php/bin/phpize

[root@localhost mbstring]# find / -name php-config
/usr/local/src/php-5.1.6/scripts/php-config
/usr/local/php/bin/php-config

# cd /usr/local/src/php-5.1.6/ext/mbstring
[root@localhost mbstring]# /usr/local/php/bin/phpize
결과:
Configuring for:
PHP Api Version : 20020918
Zend Module Api No: 20020429
Zend Extension Api No: 20050606
위의 과정이 문제없이 진행됐다면, 해당 디렉토리에 mbstring 디렉토리에 configure 파일 및
기타 설치에 필요한 파일들이 생성된다.

# ./configure --with-php-config=/usr/local/php/bin/php-config --enable-mbstring
#make

# vi /etc/php.ini
extension_dir = "/usr/local/php/modules" //php.ini에 기재된 내용

[root@localhost mbstring]# find / -name mbstring.so
/usr/lib/php/modules/mbstring.so
[root@localhost mbstring]# mkdir /usr/local/php/modules //디렉토리가 없으면 생성
// mbstring.so 모듈을 복사
[root@localhost mbstring]# cp /usr/lib/php/modules/mbstring.so /usr/local/php/modules/.

# vi /etc/php.ini
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
;
; If you wish to have an extension loaded automatically, use the following
; syntax:
;
; extension=modulename.extension
extension=mbstring.so // 기재되지 않았으면 추가

# 아파치 재시작

 

Comments