1
0
mirror of https://github.com/php/doc-fr.git synced 2026-03-24 07:02:06 +01:00
Files

168 lines
5.6 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: f88b2cc042d1045e9b106e43bf882df781ad8687 Maintainer: Fan2Shrek Status: ready -->
<!-- Reviewed: yes -->
<chapter xml:id="mysql-xdevapi.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.setup;
<section xml:id="mysql-xdevapi.requirements">
&reftitle.required;
<para>
Cette extension nécessite un serveur MySQL 8+ avec le plugin X
activé (par défaut).
</para>
<para>
Les bibliothèques prérequises pour compiler cette extension sont :
Boost (1.53.0 ou supérieur), OpenSSL et Protobuf.
</para>
</section>
<section xml:id="mysql-xdevapi.installation">
&reftitle.install;
<para>
&pecl.moved;
</para>
<para>
Un exemple de procédure d'installation sur Ubuntu 18.04 avec PHP 7.2 :
</para>
<programlisting>
<![CDATA[
// Dépendances
$ apt install build-essential libprotobuf-dev libboost-dev openssl protobuf-compiler liblz4-tool zstd
// PHP avec les extensions désirées; php7.2-dev est requis pour compiler
$ apt install php7.2-cli php7.2-dev php7.2-mysql php7.2-pdo php7.2-xml
// Compiler cette extension
$ pecl install mysql_xdevapi
]]>
</programlisting>
<para>
La commande <literal>pecl install</literal> n'active pas les extensions PHP (par défaut)
et activer les extensions PHP peut se faire de plusieurs manières.
Un autre exemple avec PHP 7.2 sur Ubuntu 18.04 :
</para>
<programlisting>
<![CDATA[
// Créer son propre fichier ini
$ echo "extension=mysql_xdevapi.so" > /etc/php/7.2/mods-available/mysql_xdevapi.ini
// Utiliser la commande 'phpenmod' (note: spécifique à Debian/Ubuntu)
$ phpenmod -v 7.2 -s ALL mysql_xdevapi
// Une alternative à 'phpenmod' est de créer un lien symbolique manuellement
// $ ln -s /etc/php/7.2/mods-available/mysql_xdevapi.ini /etc/php/7.2/cli/conf.d/20-mysql_xdevapi.ini
// Voyons quelles extensions MySQL sont activées maintenant
$ php -m |grep mysql
mysql_xdevapi
mysqli
mysqlnd
pdo_mysql
]]>
</programlisting>
<para>
&pecl.info;
<link xlink:href="&url.pecl.package;mysql_xdevapi">&url.pecl.package;mysql_xdevapi</link>.
</para>
</section>
<!-- {{{ Configuration -->
&reference.mysql-xdevapi.ini;
<!-- }}} -->
<section xml:id="mysql-xdevapi.build">
<title>Compiler à partir des sources</title>
<para>
Considérations pour compiler cette extension à partir des sources.
</para>
<itemizedlist>
<listitem>
<para>
Le nom de l'extension est 'mysql_xdevapi', donc utiliser <literal>--enable-mysql-xdevapi</literal>.
</para>
</listitem>
<listitem>
<para>
Boost; requis, utiliser optionnellement l'option de configuration --with-boost=DIR
ou définir la variable d'environnement MYSQL_XDEVAPI_BOOST_ROOT. Seuls les
fichiers d'en-tête boost sont requis; pas les binaires.
</para>
</listitem>
<listitem>
<para>
Google Protocol Buffers (protobuf): requis, utiliser optionnellement l'option de configuration
--with-protobuf=DIR ou définir la variable d'environnement MYSQL_XDEVAPI_PROTOBUF_ROOT.
</para>
<para>
Optionnellement utiliser <literal>make protobufs</literal> pour générer les fichiers protobuf (*.pb.cc/.h),
et <literal>make clean-protobufs</literal> pour supprimer les fichiers protobuf générés.
</para>
<para>
Note spécifique à Windows : selon l'environnement, la bibliothèque statique avec
un runtime DLL multi-thread peut être nécessaire.
Pour préparer, utiliser les options suivantes :
<emphasis>-Dprotobuf_MSVC_STATIC_RUNTIME=OFF -Dprotobuf_BUILD_SHARED_LIBS=OFF</emphasis>
</para>
</listitem>
<listitem>
<para>
Google Protocol Buffers / protoc: requis, il faut s'assurer que le bon
'protoc' est disponible dans le PATH lors de la compilation. C'est particulièrement
important car les scripts batch du SDK PHP Windows peuvent écraser l'environnement.
</para>
</listitem>
<listitem>
<para>
Bison: requis, et disponible dans le PATH.
</para>
<para>
Note spécifique à bison Windows: nous recommandons fortement d'utiliser bison
fourni avec le SDK PHP choisi, sinon une erreur similaire à "zend_globals_macros.h(39):
error C2375: 'zendparse': redefinition; different linkage
Zend/zend_language_parser.h(214): note: see declaration of 'zendparse'" peut
être le résultat. De plus, les scripts batch du SDK PHP Windows peuvent écraser l'environnement.
</para>
</listitem>
<listitem>
<para>
Note spécifique à Windows: pour préparer l'environnement, voir la documentation officielle
de construction Windows pour
<link xlink:href="&url.php.win.build2;">le SDK actuel</link>.
</para>
<para>
Nous recommandons d'utiliser les antislash '\\' au lieu d'un slash '/' pour tous les chemins.
</para>
</listitem>
</itemizedlist>
</section>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->