php에 pcntl 확장 기능 추가(Linux)
게시일 1년 전(2013-09-02 15:07) 읽기(936) 댓글(0 ) 1명이 이 글을 즐겨찾기에 추가했습니다.좋아요를 누르고 싶습니다
1월 10 일본 OSC소스창작협회 제32기 등록#창사#
php 다음에 추가 pcntl 확장
pcntl 확장은 PHP의 다중 스레드 작업을 지원할 수 있습니다(Linux에만 해당)
처음에 PHP를 다시 컴파일해야 했던 후 구성 프롬프트에 --enable-pcnt를 추가하세요
yum을 사용하여 php를 설치했기 때문에 위의 방법은 사용할 수 없습니다
다음은 php phpize에 동적으로 확장자를 추가하는 방법입니다
1. 먼저 phpize 명령이 있는 디렉토리를 살펴보세요. (ps: 내 디렉토리/usr/bin/phpize)
찾지 못하면 설치를 실행하세요
yum install php53_devel (ps: 자신의 버전에 주의하세요)
설치가 완료된 후. phpize 명령이 생성됩니다
2. php.net으로 이동하여 해당 버전의 php 소스 파일을 다운로드합니다
php-5.3.17을 예로 들어 압축을 푼 후 해당 모듈을 입력합니다
. cd ext/pcntl
#먼저 phpize를 실행합니다
/usr/bin/phpize
./configure --with-php-config=/usr/bin/php-config (ps: 디렉토리를 지정하십시오. php-config 올바르게 실행)
#컴파일 및 설치
make && make install
이번에 오류가 발생했습니다
./configure가 정상적으로 컴파일되었지만 오류 발생
오류: 'PHP_FE_END'가 여기서 선언되지 않았습니다. (함수에는 없음)
해결 방법:
소스 코드에 오류가 있습니다. php-5.3.17 디렉터리를 입력하세요.
sed -i 's|PHP_FE_END|{NULL,NULL,NULL}| ' ./ext/**/*.c
sed -i 's|ZEND_MOD_END|{NULL,NULL,NULL}|' ./ext/**/*.c
Re-make && make install
3. 컴파일이 완료되면 pcntl.so 파일이 생성됩니다.
php 모델 디렉터리에서 /etc/php.ini를 편집하고
extension=pcntl.so
를 추가합니다. 4. Apache를 다시 시작합니다
service httpd restart
5. 설치가 성공했는지 테스트합니다
echo pcntl_fork();
?>
출력: 23165
위 내용은 PHP에 추가된 pcntl 확장(Linux)에 대한 내용과 함께 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.