Compilación del código fuente de ElastiCache Cluster Client para PHP - Amazon ElastiCache

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Compilación del código fuente de ElastiCache Cluster Client para PHP

En esta sección se explica cómo obtener y compilar el código fuente de ElastiCache Cluster Client para PHP.

Existen dos paquetes que debe extraer de GitHub y compilar; aws-elasticache-cluster-client-libmemcached y aws-elasticache-cluster-client-memcached-for-php.

Compilación de la biblioteca libmemcached

Bibliotecas de requisitos previos

  • OpenSSL 1.1.0 o superior (a menos que la compatibilidad con TLS esté deshabilitada por. /configure —disable-tls).

  • SASL (libsasl2, a menos que la compatibilidad con SASL esté deshabilitada por ./configure --disable-sasl).

Para compilar la biblioteca aws-elasticache-cluster-client-libmemcached
  1. Lance una instancia de Amazon EC2.

  2. Instale las dependencias de la biblioteca.

    • En la AMI de Amazon Linux 201509/AMI de Amazon Linux 2

      sudo yum -y update sudo yum install gcc gcc-c++ autoconf libevent-devel make perl-core pcre-devel wget zlib-devel // Install OpenSSL 1.1.1 wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz tar xvf openssl-1.1.1c.tar.gz cd openssl-1.1.1c ./config make sudo make install sudo ln -s /usr/local/lib64/libssl.so.1.1 /usr/lib64/libssl.so.1.1
    • En la AMI de Ubuntu 14.04 (no se requiere para las versiones de Ubuntu que vienen con OpenSSL >= 1.1)

      sudo apt-get update sudo apt-get install libevent-dev gcc g++ make autoconf libsasl2-dev // Install OpenSSL 1.1.1 wget https://www.openssl.org/source/openssl-1.1.1c.tar.gz tar xvf openssl-1.1.1c.tar.gz cd openssl-1.1.1c ./config make sudo make install sudo ln -s /usr/local/lib/libssl.so.1.1 /usr/lib/x86_64-linux-gnu/libssl.so.1.1
  3. Extraiga el repositorio y compile el código.

    git clone https://github.com/awslabs/aws-elasticache-cluster-client-libmemcached.git cd aws-elasticache-cluster-client-libmemcached touch configure.ac aclocal.m4 configure Makefile.am Makefile.in mkdir BUILD cd BUILD ../configure --prefix=<libmemcached-install-directory> --with-pic --disable-sasl

    Si la ejecución de ../configure no logra encontrar libssl (biblioteca de OpenSSL) puede que sea necesario modificar la variable de entorno PKG_CONFIG_PATH:

    PKG_CONFIG_PATH=/path/to/ssl/lib/pkgconfig ../configure --prefix=<libmemcached-install-directory> --with-pic --disable-sasl

    Como alternativa, si no está utilizando TLS, puede deshabilitarlo ejecutando:

    make sudo make install ../configure —prefix=<libmemcached-install-directory> --with-pic --disable-sasl --disable-tls

Compilación del cliente de detección automática de ElastiCache para Memcached para PHP

En las secciones siguientes se describe cómo compilar el cliente de detección automática de ElastiCache para Memcached.

Compilación del cliente de ElastiCache Memcached para PHP 7 o superior

Reemplace PHP-7.x con la versión que está utilizando.

Instale PHP:

sudo yum install -y amazon-linux-extras sudo amazon-linux-extras enable php7.x

Ejecute el siguiente conjunto de comandos en el directorio de código.

git clone https://github.com/awslabs/aws-elasticache-cluster-client-memcached-for-php.git cd aws-elasticache-cluster-client-memcached-for-php phpize mkdir BUILD CD BUILD ../configure --with-libmemcached-dir=<libmemcached-install-directory> --disable-memcached-sasl

Si la ejecución de ../configure no encuentra libssl (biblioteca de OpenSSL), puede que sea necesario modificar variable de entorno PKG_CONFIG_PATH al directorio de archivos .PC de OpenSSL:

PKG_CONFIG_PATH=/path/to/ssl/lib/pkgconfig ../configure --with-libmemcached-dir=<path to libmemcached build directory> --disable-memcached-sasl

Como alternativa, si no usa TLS, puede deshabilitarlo ejecutando:

make make install ../configure --with-libmemcached-dir=<path to libmemcached build directory> --disable-memcached-sasl --disable-memcached-tls
nota

Puede vincular estáticamente la biblioteca de libmemcached en el binario de PHP para poder transferirla entre varias plataformas de Linux. Para ello, ejecute el siguiente comando antes de make:

sed -i "s#-lmemcached#<libmemcached-install-directory>/lib/libmemcached.a -lcrypt -lpthread -lm -lstdc++ -lsasl2#" Makefile

Compilación del cliente de ElastiCache para Memcached para PHP 5

Compile el aws-elasticache-cluster-client-memcached-for-php ejecutando los siguientes comandos en la carpeta aws-elasticache-cluster-client-memcached-for-php/.

git clone https:////github.com/awslabs/aws-elasticache-cluster-client-memcached-for-php/tree/php.git cd aws-elasticache-cluster-client-memcached-for-php sudo yum install zlib-devel phpize ./configure --with-libmemcached-dir=<libmemcached-install-directory> make make install