php 8.1 버전 소스 설치 방법

Yeeees, I can!·2022년 9월 13일
0
post-thumbnail

준비물

1. php 소스파일

https://www.php.net/downloads.php
https://www.php.net/distributions/php-8.1.10.tar.gz

2.libzip 소스파일

php 8.1 설치시 libzip 버전 체크 오류가 발생한다 , libzip상위버전 설치가 필요하므로
소스파일을 미리 다운받은 후 설치해야합니다.

#libzip 오류
configure: error: Package requirements (libzip >= 0.11 libzip != 1.3.1 libzip != 1.7.0) were not met:

설치 진행 과정

1.libzip 설치 진행

https://libzip.org/download/
https://libzip.org/download/libzip-1.9.2.tar.xz

본 설치작업은 1.9.2버전을 사용합니다.

#압축해제 후 build 경로 생성(cmake3이 필요하므로 패키지 설치)
[root@testsrv /usr/local/src/libzip-1.9.2]# mkdir build
[root@testsrv /usr/local/src/libzip-1.9.2]# cd build/
[root@testsrv /usr/local/src/libzip-1.9.2/build]#
#cmake 진행
[root@testsrv /usr/local/src/libzip-1.9.2/build]# cmake3 ../ -DCMAKE_INSTALL_PREFIX=/usr/local/libzip192
make 및 make install 까지 진행

#설치시 아래와 같은 에러 발생시

CMake Error at /usr/share/cmake/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find ZLIB (missing: ZLIB_LIBRARY ZLIB_INCLUDE_DIR) (Required is
at least version "1.1.2")

#zlib-devel패키지를 설치해줍니다.


### 2.PHP 8.1 컴파일 설치 진행

#사용되는 컴파일 옵션
'./configure' \
'--prefix=/usr/local/php' \
'--with-apxs2=/opt/apache/bin/apxs' \
'--enable-mysqlnd' \
'--with-mysqli=mysqlnd' \
'--with-pdo-mysql=mysqlnd' \
'--with-curl' \
'--enable-gd' \
'--with-webp' \
'--with-jpeg' \
'--with-xpm' \
'--with-zlib' \
'--with-gdbm' \
'--with-openssl' \
'--with-bz2' \
'--enable-exif' \
'--enable-ftp' \
'--enable-sockets' \
'--enable-sysvsem' \
'--enable-sysvshm' \
'--enable-sysvmsg' \
'--enable-soap' \
'--enable-mbstring' \
'--enable-bcmath' \
'--with-zip' \
'LIBZIP_CFLAGS=-I/usr/local/libzip192/include' \
'LIBZIP_LIBS=-L/usr/local/libzip192/lib64 -lzip'

>  참조할 libzip 1.9.2 의 include와 lib경로를 지정하여 설치

> php 설치파일 경로로 이동하여 컴파일 진행

[root@testsrv /usr/local/src/php_install/php-8.1.10]#
[root@testsrv /usr/local/src/php_install/php-8.1.10]# './configure' '--prefix=/usr/local/php' '--with-apxs2=/opt/apache/bin/apxs' '--enable-mysqlnd' '--with-mysqli=mysqlnd' '--with-pdo-mysql=mysqlnd' '--with-curl' '--enable-gd' '--with-webp' '--with-jpeg' '--with-xpm' '--with-zlib' '--with-gdbm' '--with-openssl' '--with-bz2' '--enable-exif' '--enable-ftp' '--enable-sockets' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-soap' '--enable-mbstring' '--enable-bcmath' '--with-zip' 'LIBZIP_CFLAGS=-I/usr/local/libzip192/include' 'LIBZIP_LIBS=-L/usr/local/libzip192/lib64 -lzip'

> make 및 make install 까지 진행.

## 설치 완료 후 php 작동 확인

[root@testsrv /usr/local/src/php_install/php-8.1.10]# /usr/local/php/bin/php -v
PHP 8.1.10 (cli) (built: Sep 3 2022 20:50:27) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.10, Copyright (c) Zend Technologies
[root@testsrv /usr/local/src/php_install/php-8.1.10]#


> php.ini파일은 php소스파일내부에 보면 있으니, 참고하여 사용

[root@testsrv /usr/local/src/php_install/php-8.1.10]# ll php.ini-*
-rw-r--r-- 1 501 games 72762 2022-08-31 01:09 php.ini-development
-rw-r--r-- 1 501 games 72908 2022-08-31 01:09 php.ini-production



profile
그동안 경험 및 공부하면서 얻은 지식을 써놓은 블로그입니다~

0개의 댓글