mirror of
https://github.com/php/doc-ja.git
synced 2026-03-24 07:02:08 +01:00
- 参照下さい - 参照して下さい - 参照してください を「参照ください」に置き換えた。 個人的には「参照ください」は違和感のある日本語だが、既存の訳で圧倒的な優勢だったそれを採用した。 closes: #23
183 lines
6.6 KiB
XML
183 lines
6.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: f88b2cc042d1045e9b106e43bf882df781ad8687 Maintainer: mumumu Status: ready -->
|
|
|
|
<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>
|
|
この拡張モジュールは、X プラグインを有効にした(デフォルトで有効になっています)
|
|
MySQL 8 以上のサーバーが必須です。
|
|
</para>
|
|
<para>
|
|
この拡張モジュールをコンパイルするために前提となるライブラリは以下です:
|
|
Boost (1.53.0 以上), OpenSSL, and Protobuf
|
|
</para>
|
|
|
|
</section>
|
|
|
|
<section xml:id="mysql-xdevapi.installation">
|
|
&reftitle.install;
|
|
|
|
<para>
|
|
&pecl.moved;
|
|
</para>
|
|
|
|
<para>
|
|
Ubuntu 18.04 上の PHP 7.2 でインストールする例:
|
|
</para>
|
|
<programlisting>
|
|
<![CDATA[
|
|
// 依存するものをインストール
|
|
$ apt install build-essential libprotobuf-dev libboost-dev openssl protobuf-compiler liblz4-tool zstd
|
|
|
|
// 望ましい拡張モジュールと一緒にPHPをインストール; php7.2-dev はコンパイルに必須
|
|
$ apt install php7.2-cli php7.2-dev php7.2-mysql php7.2-pdo php7.2-xml
|
|
|
|
// 拡張モジュールをコンパイル
|
|
$ pecl install mysql_xdevapi
|
|
]]>
|
|
</programlisting>
|
|
|
|
<para>
|
|
<literal>pecl install</literal> コマンドは、PHP の拡張モジュールを有効にしません(デフォルト)
|
|
し、PHP の拡張モジュールを有効にする方法は複数あります。
|
|
Ubuntu 18.04 上の PHP 7.2 でインストールする別の例を以下に示します:
|
|
</para>
|
|
|
|
<programlisting>
|
|
<![CDATA[
|
|
// 自分の ini ファイルを作る
|
|
$ echo "extension=mysql_xdevapi.so" > /etc/php/7.2/mods-available/mysql_xdevapi.ini
|
|
|
|
// 'phpenmod' コマンドを使う (注意: Debian/Ubuntu 特有のコマンドです)
|
|
$ phpenmod -v 7.2 -s ALL mysql_xdevapi
|
|
|
|
// 'phpenmod' の代わりに、手動でシンボリックリンクを張る
|
|
// $ ln -s /etc/php/7.2/mods-available/mysql_xdevapi.ini /etc/php/7.2/cli/conf.d/20-mysql_xdevapi.ini
|
|
|
|
// MySQL 拡張モジュールが有効になっているかどうかをチェックしよう
|
|
$ 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>ソースコードからビルド / コンパイルする</title>
|
|
<para>
|
|
この拡張モジュールをソースコードからコンパイルする際に、考慮すべき事項は以下です。
|
|
</para>
|
|
|
|
<itemizedlist>
|
|
<listitem>
|
|
<para>
|
|
拡張モジュールの名前は 'mysql_xdevapi' です。
|
|
よって、 <literal>--enable-mysql-xdevapi</literal> を使ってください。
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Boost が必須です。
|
|
オプションで configure オプション --with-boost=DIR や
|
|
MYSQL_XDEVAPI_BOOST_ROOT 環境変数が使えます。
|
|
boost のヘッダファイルのみが必須で、ライブラリファイルは必要ありません。
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Google の Protocol Buffers (protobuf) が必須です。
|
|
オプションで configure オプション --with-protobuf=DIR や
|
|
MYSQL_XDEVAPI_PROTOBUF_ROOT 環境変数が使えます。
|
|
</para>
|
|
<para>
|
|
protobuf ファイル (*.pb.cc/.h) を生成するのに
|
|
オプションで <literal>make protobufs</literal> が使えますし、
|
|
生成された protobuf ファイルを削除するのに
|
|
<literal>make clean-protobufs</literal> が使えます。
|
|
</para>
|
|
<para>
|
|
Windows 特有の protobuf に関する注意:
|
|
環境によっては、マルチスレッドに対応した
|
|
DLL ランタイムが含まれる静的ライブラリが必要かもしれません。
|
|
これを準備するには、以下のオプションを使ってください:
|
|
<emphasis>-Dprotobuf_MSVC_STATIC_RUNTIME=OFF -Dprotobuf_BUILD_SHARED_LIBS=OFF</emphasis>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Google の Protocol Buffers / protocol コンパイラ (protoc) が必須です。
|
|
適切な 'protoc' コマンドが ビルド中に PATH が通った場所に置いておいてください。
|
|
このことは、Windows PHP SDK バッチスクリプトが
|
|
この環境変数を上書きする可能性があるため特に重要です。
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Bison は必須です。PATH が通った場所に置いておいてください。
|
|
</para>
|
|
<para>
|
|
Window 特有の bison に関する注意:
|
|
PHP SDK と同梱されている bison を使うことを強く推奨します。
|
|
さもなければ、次のメッセージに似たエラーが出る可能性があります。
|
|
|
|
"zend_globals_macros.h(39):
|
|
error C2375: 'zendparse': redefinition; different linkage
|
|
Zend/zend_language_parser.h(214): note: see declaration of 'zendparse'"
|
|
|
|
Windows PHP SDK バッチスクリプトが
|
|
環境変数を上書きする可能性があることにも注意してください。
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Windows 特有の注意:
|
|
環境を準備するために、オフィシャルな Windows ビルドドキュメント
|
|
(<link xlink:href="&url.php.win.build2;">現行のSDK</link>)
|
|
を参照ください
|
|
</para>
|
|
<para>
|
|
全てのファイルpathについて、スラッシュ '/' ではなく、
|
|
バックスラッシュ '\\' を使うことを推奨します。
|
|
</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
|
|
-->
|