libzip-1.5.2をCentOS6にソースインストール

覚書です。
ところどころ省いています。
実践環境で使う場合はご注意ください。

※本記事より新しい記事があります。
libzip-1.6.1をCentOS7にソースインストール

目的

PHP7.3.6 をインストールしようとしたところconfigure で次のエラーが発生しました。

checking for libzip... not found
configure: error: Please reinstall the libzip distribution

調べていくと、PHP 5.6.0 から、--with-libzip=DIR オプションが追加されたようで、libzip 0.11 以降が必要です。
PHP7.2 までは気にしたこともなかったのですが、どうやらPHP7.3からはlibzipを含まず、必要なら自分でインストールする形になったようです。

https://www.php.net/manual/ja/zip.installation.php

特徴

  • ソースコードからのインストール
  • 複数バージョンの共存

特定バージョンでの開発や動作確認など開発環境での用途を目的としています。

環境

実施日2019-6-21
サーバさくらのVPS 2G
OSCentOS 6.10
cat /etc/redhat-release
CentOS release 6.10 (Final)
rpm -qa | grep centos-release
centos-release-scl-7-4.el6.centos.noarch
centos-release-6-10.el6.centos.12.3.x86_64
centos-release-scl-rh-2-4.el6.centos.noarch

事前準備

cmake-3.14.5

libzip をcmake していると次のエラーが発生しました。

CMake Error at CMakeLists.txt:4 (CMAKE_MINIMUM_REQUIRED):
  CMake 3.0.2 or higher is required.  You are running version 2.8.12.2

今までは yum で入れたものを使っていたのですが、CentOS6では 2.8.12.2 までのようです。

libzip 1.5.2

公式サイトからダウンロードして、/tmp  にアップロード

libzipの公式サイトのダウンロードページに行くと最新版へのリンクがあります。

「libzip-1.5.2.tar.gz」をクリックしてダウンロードし、次の場所にアップロードします。

/tmp/libzip-1.5.2.tar.gz

インストール

公式の手順はこちらです。

ls -la /usr/local/src
ls -la /usr/local/lib

mkdir /usr/local/src/libzip-1.5.2

cp /tmp/libzip-1.5.2.tar.gz /usr/local/src/libzip-1.5.2/libzip-1.5.2.tar.gz

cd /usr/local/src/libzip-1.5.2

tar xvzf libzip-1.5.2.tar.gz

cd libzip-1.5.2

/usr/local/lib/cmake-3.14.5/bin/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/lib/libzip-1.5.2

make

make check

make install

configure

phpのconfigure での指定方法

--with-libzip=/usr/local/lib/libzip-1.5.2