PHP 7

Slackwareは,3年前にリリースされた14.2が最新版で,セキュリティーパッチがときどきリリースされています.しかし,PHPは,outdatedとなってしまった,5.6.xにとどまったまま,7.xに移行する気配はなく,このWordPress他いくつかのサービスを,サポートの切れたPHPで動かし,セキュリティ上の危険にさらすことになってしまいました.

そこで,久しぶりに自力でパッケージのbuildをしてみました.PHPのbuildは,x86やAMD64ではずっとやってきていたのですが,最近はそういうめんどうな^^; ことは避けていました.

最初,AMD64時代PHP 5.6.xのbuildに自分で使っていたconfigure optionsを使いましたが,うまくいきませんでした.mysqlのサポートが変わったのが原因のようですが,いくつかオプションを追加しても解決しませんでした.

そこで,ネット検索しました.ネット検索すると,一番ヒットする情報は,PHP 5時代の役に立たないどころか有害となる情報です.

しかし,CentOS用のoptionを見つけ出し,そこからSlackwareには含まれていないrecordを外したらうまくいきました.

以下が,Slackware ARM 14.2で,PHP 7.3.10-devのbuildがうまくいき,WordPressの動作に成功したconfigure optionsです

CFLAGS="-O2" ./configure \
    --enable-mbstring \
    --enable-zip \
    --enable-bcmath \
    --enable-pcntl \
    --enable-ftp \
    --enable-exif \
    --enable-calendar \
    --enable-sysvmsg \
    --enable-sysvsem \
    --enable-sysvshm \
    --enable-wddx \
    --with-curl \
    --with-iconv \
    --with-gmp \
    --with-pspell \
    --with-gd \
    --with-jpeg-dir=/usr/lib \
    --with-png-dir=/usr/lib \
    --with-zlib-dir=/usr \
    --with-xpm-dir=/usr \
    --with-freetype-dir=/usr \
    --enable-gd-jis-conv \
    --with-openssl \
    --with-ldap \
    --with-pdo-mysql=/usr \
    --with-gettext=/usr \
    --with-zlib=/usr \
    --with-bz2=/usr \
    --with-mysqli=/usr/bin/mysql_config \
    --with-apxs2=/usr/bin/apxs \
    --build=arm-slackware-linux

そろそろSlackwareの使用も潮時かなぁと思っていましたが,これで,またしばらく続けて使うことにします.

参考にしたサイト

その後(2019/09/01)

その後もごにょごょいじって,git repositoryのはやめて,PHP 7.3.9を使用しています.PHPを利用しているパッケージは,

  • WordPress
  • PukiWiki
  • phpMyAdmin
  • phpLdapAdmin

です.WordPress以外は非公開で,自分専用です.phpMyAdminとphpLdapAdminは,新しいージョンがPHP7と不具合があったので,updateを止めていましたが,今回それらも最新安定版にできました.

Notes:
1. configure時にunrecognized optionsとなったものは外してあります
configure時にunrecognized optionsとなったものは外してあります

2 thoughts on “PHP 7”

  1. configureのオプションは他のパッケージのsrpmから拝借してました。最近だとdockerを使うのが良いのでしょうが,歳を取ったので…以下省略です。

    1. JH4XSY/1さん,コメントありがとうございます.
      SRPMの真似るのはよくやりました^^;
      動きゃいいんですが,他のdistroや流儀の人のを拝借すると,そのまま行かないことはよくあります.今回も,LDAPサポートがついてなかったりして,多少足したり引いたりしました.
      その後もいろいろやって,なんとか,PHPを利用しているパッケージ(PukiWiki, WordPress, phpMyAdmin, phpLdapAdmin)は皆動くようになりました.

Comments are closed.