Skip to content

Instantly share code, notes, and snippets.

@MMazoni
Last active December 2, 2019 13:59
Show Gist options
  • Select an option

  • Save MMazoni/a700b78f179c6481047e07c25451c45e to your computer and use it in GitHub Desktop.

Select an option

Save MMazoni/a700b78f179c6481047e07c25451c45e to your computer and use it in GitHub Desktop.
PHP 7.4.0 build from source

Primeiramente baixe o código fonte da versão do PHP que quiser, irei usar a mais recente(data que estou escrevendo) 7.4.0.

Baixe o PHP

Extraia e entre na pasta via terminal.

1 - Instalar dependências(usando Ubuntu 19.10)

sudo apt install autoconf automake bison build-essential curl flex \
    libtool libssl-dev libcurl4-openssl-dev libxml2-dev libonig-dev \
    libreadline-dev libsqlite3-dev libzip-dev nginx openssl \
    pkg-config re2c sqlite3 zlib1g-dev libaio1 libaio-dev

2 - Crie um diretório para separá-lo de outras versões do PHP

mkdir -p ~/bin/php-latest/
./configure --prefix=$HOME/bin/php-latest \
    --enable-mysqlnd \
    --with-pdo-mysql \
    --with-pdo-mysql=mysqlnd \
    --with-mysqli=mysqlnd \
    --enable-bcmath \
    --enable-fpm \
    --with-fpm-user=www-data \
    --with-fpm-group=www-data \
    --enable-mbstring \
    --enable-phpdbg \
    --enable-shmop \
    --enable-sockets \
    --enable-sysvmsg \
    --enable-sysvsem \
    --enable-sysvshm \
    --enable-zip \
    --with-libzip=/usr/lib/x86_64-linux-gnu \
    --with-zlib \
    --with-curl \
    --with-pear \
    --with-openssl \
    --enable-pcntl \
    --with-readline \
    --with-pdo-sqlite \
    --with-oci8=instantclient,/opt/oracle/instantclient_19_5
make
make install
cp php.ini-development ~/bin/php-latest/lib/php.ini
cd ~/bin/php-latest/etc/
mv php-fpm.conf.default php-fpm.conf
mv php-fpm.d/www.conf.default php-fpm.d/www.conf
cd ~/bin
ln -s php-latest/bin/php php
ln -s php-latest/bin/php-cgi php-cgi
ln -s php-latest/bin/php-config php-config
ln -s php-latest/bin/phpize phpize
ln -s php-latest/bin/phar.phar phar
ln -s php-latest/bin/pear pear
ln -s php-latest/bin/phpdbg phpdbg
ln -s php-latest/sbin/php-fpm php-fpm
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment