Compilation du code source pour le client de cluster ElastiCache pour PHP - Amazon ElastiCache

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Compilation du code source pour le client de cluster ElastiCache pour PHP

Cette section explique comment obtenir et compiler le code source du client de cluster ElastiCache pour PHP.

Il y a deux paquets que vous devez extraire de GitHub et compiler : aws-ElastiCache-cluster-client-libmemcached et aws-ElastiCache-cluster-client-memcached-for-php.

Compilation de la bibliothèque libmemcached

Bibliothèques prérequises

  • OpenSSL 1.1.0 ou supérieur (sauf si la prise en charge de TLS est désactivée par ./configure --disable-tls).

  • SASL (libsasl2, sauf si la prise en charge de SASL est désactivée par ./configure --disable-sasl).

Pour compiler la bibliothèque aws-ElastiCache-cluster-client-libmemcached
  1. Lancez une instance Amazon EC2.

  2. Installez les dépendances de bibliothèque.

    • Sur l'AMI Amazon Linux 201509/l'AMI 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
    • Sur l'AMI Ubuntu 14.04 (non requise pour les versions d'Ubuntu fournies avec 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. Extrayez le référentiel et compilez le code.

    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 l'exécution de ../configure ne parvient pas à trouver libssl (bibliothèque OpenSSL), il peut être nécessaire de modifier la variable d'environnement PKG_CONFIG_PATH :

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

    Autrement, si vous n'utilisez pas TLS, vous pouvez le désactiver en exécutant :

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

Compilation du client de découverte automatique ElastiCache Memcached pour PHP

Les sections suivantes décrivent comment compiler le client de découverte automatique Memcached ElastiCache

Compilation du client ElastiCache Memcached pour PHP 7 ou supérieur

Remplacez PHP-7.x avec la version que vous utilisez.

Installez PHP :

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

Exécutez l'ensemble de commandes dans le répertoire du code.

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 l'exécution de ../configure ne parvient pas à trouver libssl (bibliothèque OpenSSL), il peut être nécessaire d'ajuster la variable d'environnement PKG_CONFIG_PATH pour qu'elle pointe vers le répertoire du fichier .PC d'OpenSSL :

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

Autrement, si vous n'utilisez pas TLS, vous pouvez le désactiver en exécutant :

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

Vous pouvez lier statiquement la bibliothèque libmemcached dans le binaire PHP afin qu'il soit porté sur différentes plateformes Linux. Pour cela, exécutez la commande suivante avant make :

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

Compilation du client ElastiCache Memcached pour PHP 5

Compilez le aws-elasticache-cluster-client-memcached-for-php en exécutant les commandes suivantes dans le dossier 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