Debianをjessieからstretchにアップグレードした際に、PHPのビルドが通ってくれなかったのでメモ
環境
phpenv
使用- Debian 9 stretch
先に結論
バージョンアップで解決されてる可能性が高いですが、現状確認した物で正常にビルド出来たバージョンは7.2.0RC1
です
curlのPATHが違うと怒られる
1 | [Downloading]: https://secure.php.net/distributions/php-7.0.14.tar.bz2 |
eash.h
が<curl-dir>/include/curl/
に必要ですよと書いてあるので見に行くと確かに場所が違った
1 | $ docker exec 9zilla-nginx-php find / -name easy.h |
調べた
↑によると、
Looks like the proper place to fix it is PHP itself: https://bugs.php.net/bug.php?id=74125.
という事なので、PHPバージョンをあげて再ビルドしてみる
7.1.9はシェルスクリプトまわりでエラー
7.1.9で試してみた所、シェルスクリプト絡みの何かがアレしてこちらもビルドエラー1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21[Info]: Building 7.1.9 into /home/9zilla/.anyenv/envs/phpenv/versions/7.1.9
[Downloading]: https://secure.php.net/distributions/php-7.1.9.tar.bz2
[Preparing]: /tmp/php-build/source/7.1.9
-----------------
| BUILD ERROR |
-----------------
Here are the last 10 lines from the log:
-----------------------------------------
shtool:echo:Warning: unable to determine terminal sequence for bold mode
shtool:echo:Warning: unable to determine terminal sequence for bold mode
./configure: line 410: test: please: integer expression expected
configure: error: reinstall
./configure: line 299: return: please: numeric argument required
./configure: line 309: exit: please: numeric argument required
-----------------------------------------
The full Log is available at '/tmp/php-build.7.1.9.20170913140117.log'.
[Warn]: Aborting build.
インストール候補がRC1しか無かった
1 | $ phpenv install -l | tail -n 10 |
7.1.9より上位バージョンは、現時点(2017/09)では7.2.0RC1止まりのようなので、暫定でこちら使用したらビルド出来ました
ということで、7.2.0正式リリース待ちする事に
おまけ
魂斗羅!
hit ↑↑↓↓←→←→ba[enter] at https://t.co/NWJr7NP0re
— Akihito Koriyama (@koriym) 2017年9月13日