Submit Search
Upload
php-buildがいかに便利かを力説する
•
2 likes
•
10,623 views
Yoshio Hanawa
Follow
PHP BLT #1 発表資料
Read less
Read more
Software
Report
Share
Report
Share
1 of 21
Download now
Download to read offline
Recommended
PHP7の拡張モジュール事情
PHP7の拡張モジュール事情
Yoshio Hanawa
PHPNGの動向
PHPNGの動向
Yoshio Hanawa
PHPの拡張モジュールをGoで作る
PHPの拡張モジュールをGoで作る
Yoshio Hanawa
PHP7の内部実装から学ぶ性能改善テクニック
PHP7の内部実装から学ぶ性能改善テクニック
Yoshio Hanawa
zval をダイエットしてみた
zval をダイエットしてみた
Yoshio Hanawa
PHP7はなぜ速いのか
PHP7はなぜ速いのか
Yoshio Hanawa
PHP7で変わること ——言語仕様とエンジンの改善ポイント
PHP7で変わること ——言語仕様とエンジンの改善ポイント
Yoshio Hanawa
Phpでアプリケーションサーバー
Phpでアプリケーションサーバー
k-motoyan
Recommended
PHP7の拡張モジュール事情
PHP7の拡張モジュール事情
Yoshio Hanawa
PHPNGの動向
PHPNGの動向
Yoshio Hanawa
PHPの拡張モジュールをGoで作る
PHPの拡張モジュールをGoで作る
Yoshio Hanawa
PHP7の内部実装から学ぶ性能改善テクニック
PHP7の内部実装から学ぶ性能改善テクニック
Yoshio Hanawa
zval をダイエットしてみた
zval をダイエットしてみた
Yoshio Hanawa
PHP7はなぜ速いのか
PHP7はなぜ速いのか
Yoshio Hanawa
PHP7で変わること ——言語仕様とエンジンの改善ポイント
PHP7で変わること ——言語仕様とエンジンの改善ポイント
Yoshio Hanawa
Phpでアプリケーションサーバー
Phpでアプリケーションサーバー
k-motoyan
Zend OPcacheの速さの秘密を探る
Zend OPcacheの速さの秘密を探る
Yoshio Hanawa
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
php-timecopを実戦投入してみた
php-timecopを実戦投入してみた
Yoshio Hanawa
たのしい独自フレームワーク
たのしい独自フレームワーク
Kenta USAMI
PHP カンファレンス福岡 参加報告
PHP カンファレンス福岡 参加報告
y-uti
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
Keisuke Utsumi
anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件
y-uti
PHPerに覚えて欲しい日本語の重要性
PHPerに覚えて欲しい日本語の重要性
Rina Fukuda
PHP カンファレンス福岡 2017 参加報告
PHP カンファレンス福岡 2017 参加報告
y-uti
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Hisateru Tanaka
JIT for PHP を試した
JIT for PHP を試した
y-uti
RFC: "var" Deprecation
RFC: "var" Deprecation
y-uti
CakePHPとYii_エンジニア勉強会20130820
CakePHPとYii_エンジニア勉強会20130820
エンジニア勉強会 エスキュービズム
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
y-uti
CakePHP を使ってよかったこと
CakePHP を使ってよかったこと
Wataru Terada
PHPエクステンションの開発tips
PHPエクステンションの開発tips
Yoshio Hanawa
WordPress 多言語化プラグインqTranslateの紹介
WordPress 多言語化プラグインqTranslateの紹介
Takashi Uemura
PSGIへの誘い
PSGIへの誘い
azuma satoshi
Mysqlを4.0から5.0を経由して5.6へバージョンアップした話
Mysqlを4.0から5.0を経由して5.6へバージョンアップした話
Masataka Kono
Go言語ハンズオン資料flagパッケージを使ってみる
Go言語ハンズオン資料flagパッケージを使ってみる
yoshito funayose
Php非同期の技法
Php非同期の技法
Shogo Kawahara
Phpのはなし
Phpのはなし
Serverworks Co.,Ltd.
More Related Content
What's hot
Zend OPcacheの速さの秘密を探る
Zend OPcacheの速さの秘密を探る
Yoshio Hanawa
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
php-timecopを実戦投入してみた
php-timecopを実戦投入してみた
Yoshio Hanawa
たのしい独自フレームワーク
たのしい独自フレームワーク
Kenta USAMI
PHP カンファレンス福岡 参加報告
PHP カンファレンス福岡 参加報告
y-uti
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
Keisuke Utsumi
anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件
y-uti
PHPerに覚えて欲しい日本語の重要性
PHPerに覚えて欲しい日本語の重要性
Rina Fukuda
PHP カンファレンス福岡 2017 参加報告
PHP カンファレンス福岡 2017 参加報告
y-uti
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Hisateru Tanaka
JIT for PHP を試した
JIT for PHP を試した
y-uti
RFC: "var" Deprecation
RFC: "var" Deprecation
y-uti
CakePHPとYii_エンジニア勉強会20130820
CakePHPとYii_エンジニア勉強会20130820
エンジニア勉強会 エスキュービズム
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
y-uti
CakePHP を使ってよかったこと
CakePHP を使ってよかったこと
Wataru Terada
PHPエクステンションの開発tips
PHPエクステンションの開発tips
Yoshio Hanawa
WordPress 多言語化プラグインqTranslateの紹介
WordPress 多言語化プラグインqTranslateの紹介
Takashi Uemura
PSGIへの誘い
PSGIへの誘い
azuma satoshi
Mysqlを4.0から5.0を経由して5.6へバージョンアップした話
Mysqlを4.0から5.0を経由して5.6へバージョンアップした話
Masataka Kono
Go言語ハンズオン資料flagパッケージを使ってみる
Go言語ハンズオン資料flagパッケージを使ってみる
yoshito funayose
What's hot
(20)
Zend OPcacheの速さの秘密を探る
Zend OPcacheの速さの秘密を探る
PHPの今とこれから2015
PHPの今とこれから2015
php-timecopを実戦投入してみた
php-timecopを実戦投入してみた
たのしい独自フレームワーク
たのしい独自フレームワーク
PHP カンファレンス福岡 参加報告
PHP カンファレンス福岡 参加報告
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
anyenv + phpenv + php-build が便利すぎる件
anyenv + phpenv + php-build が便利すぎる件
PHPerに覚えて欲しい日本語の重要性
PHPerに覚えて欲しい日本語の重要性
PHP カンファレンス福岡 2017 参加報告
PHP カンファレンス福岡 2017 参加報告
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
JIT for PHP を試した
JIT for PHP を試した
RFC: "var" Deprecation
RFC: "var" Deprecation
CakePHPとYii_エンジニア勉強会20130820
CakePHPとYii_エンジニア勉強会20130820
Windows で PHP をビルドしてみた
Windows で PHP をビルドしてみた
CakePHP を使ってよかったこと
CakePHP を使ってよかったこと
PHPエクステンションの開発tips
PHPエクステンションの開発tips
WordPress 多言語化プラグインqTranslateの紹介
WordPress 多言語化プラグインqTranslateの紹介
PSGIへの誘い
PSGIへの誘い
Mysqlを4.0から5.0を経由して5.6へバージョンアップした話
Mysqlを4.0から5.0を経由して5.6へバージョンアップした話
Go言語ハンズオン資料flagパッケージを使ってみる
Go言語ハンズオン資料flagパッケージを使ってみる
Similar to php-buildがいかに便利かを力説する
Php非同期の技法
Php非同期の技法
Shogo Kawahara
Phpのはなし
Phpのはなし
Serverworks Co.,Ltd.
CakePHP3.x での各種実装例 ~| PHP Tech Bash 20171121 ~
CakePHP3.x での各種実装例 ~| PHP Tech Bash 20171121 ~
諒一 上野
PHP buildpackでhackとphalconが動いた件について
PHP buildpackでhackとphalconが動いた件について
健治郎 安井
20110910 闇鍋的php魔改造
20110910 闇鍋的php魔改造
do_aki
PHP With Windows binary
PHP With Windows binary
Masahiko Sakamoto
第1回勉強会
第1回勉強会
Yukie Kanzawa
5分でわかる静的解析入門
5分でわかる静的解析入門
Kenta USAMI
PHP でも活用できる Makefile
PHP でも活用できる Makefile
Shohei Okada
Xhprof
Xhprof
Hisashi Aruji
Php7 on Docker on tekitoh-memdhoi.info
Php7 on Docker on tekitoh-memdhoi.info
侑弥 濱田
PHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考える
Takuya Sato
PHP With Windows binary
PHP With Windows binary
Masahiko Sakamoto
Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明
hharita
Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明
浩明 張田
新言語Hackの話 (いわてPHPカンファレンス2014)
新言語Hackの話 (いわてPHPカンファレンス2014)
Sugawara Ryousuke
PHPの今とこれから2022
PHPの今とこれから2022
Rui Hirokawa
PHP カンファレンス 2014 に行ってきたよ
PHP カンファレンス 2014 に行ってきたよ
Masaru Matsuo
CodeIgniter Con Tokyo 2011 資料
CodeIgniter Con Tokyo 2011 資料
Takako Miyagawa
PHPからC#のライブラリを呼べるようにしたdotnet_ffiを趣味でつくってみた
PHPからC#のライブラリを呼べるようにしたdotnet_ffiを趣味でつくってみた
johgus johgus
Similar to php-buildがいかに便利かを力説する
(20)
Php非同期の技法
Php非同期の技法
Phpのはなし
Phpのはなし
CakePHP3.x での各種実装例 ~| PHP Tech Bash 20171121 ~
CakePHP3.x での各種実装例 ~| PHP Tech Bash 20171121 ~
PHP buildpackでhackとphalconが動いた件について
PHP buildpackでhackとphalconが動いた件について
20110910 闇鍋的php魔改造
20110910 闇鍋的php魔改造
PHP With Windows binary
PHP With Windows binary
第1回勉強会
第1回勉強会
5分でわかる静的解析入門
5分でわかる静的解析入門
PHP でも活用できる Makefile
PHP でも活用できる Makefile
Xhprof
Xhprof
Php7 on Docker on tekitoh-memdhoi.info
Php7 on Docker on tekitoh-memdhoi.info
PHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考える
PHP With Windows binary
PHP With Windows binary
Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明
Lt資料 php7.0 張田浩明
新言語Hackの話 (いわてPHPカンファレンス2014)
新言語Hackの話 (いわてPHPカンファレンス2014)
PHPの今とこれから2022
PHPの今とこれから2022
PHP カンファレンス 2014 に行ってきたよ
PHP カンファレンス 2014 に行ってきたよ
CodeIgniter Con Tokyo 2011 資料
CodeIgniter Con Tokyo 2011 資料
PHPからC#のライブラリを呼べるようにしたdotnet_ffiを趣味でつくってみた
PHPからC#のライブラリを呼べるようにしたdotnet_ffiを趣味でつくってみた
More from Yoshio Hanawa
自宅の消費電力をリアルタイムに グラフ化してみた
自宅の消費電力をリアルタイムに グラフ化してみた
Yoshio Hanawa
Zend VMにおける例外の実装
Zend VMにおける例外の実装
Yoshio Hanawa
Zend VMにおける例外の実装
Zend VMにおける例外の実装
Yoshio Hanawa
ぼくのかんがえる さいきょうの銀行振込
ぼくのかんがえる さいきょうの銀行振込
Yoshio Hanawa
「OKグーグル! 銀行振込1000円」
「OKグーグル! 銀行振込1000円」
Yoshio Hanawa
浮動小数点数とOSSのバグの話
浮動小数点数とOSSのバグの話
Yoshio Hanawa
PHP拡張をPECLに登録してわかったこと
PHP拡張をPECLに登録してわかったこと
Yoshio Hanawa
GitHubからお金をもらった話
GitHubからお金をもらった話
Yoshio Hanawa
iOS/macOSとAndroid/Linuxのサンドボックス機構について調べた
iOS/macOSとAndroid/Linuxのサンドボックス機構について調べた
Yoshio Hanawa
realpathキャッシュと OPcacheの面倒すぎる関係
realpathキャッシュと OPcacheの面倒すぎる関係
Yoshio Hanawa
家庭用ブロードバンドルータ上でWordPressを動かそう
家庭用ブロードバンドルータ上でWordPressを動かそう
Yoshio Hanawa
Laungage Update PHP編
Laungage Update PHP編
Yoshio Hanawa
GitHubにバグ報告して賞金$500を頂いた話
GitHubにバグ報告して賞金$500を頂いた話
Yoshio Hanawa
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
Yoshio Hanawa
PHPの正規表現と最長一致
PHPの正規表現と最長一致
Yoshio Hanawa
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
Yoshio Hanawa
浮動小数点数の話 2013年度版
浮動小数点数の話 2013年度版
Yoshio Hanawa
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
Yoshio Hanawa
Testing PHP extension on Travis CI
Testing PHP extension on Travis CI
Yoshio Hanawa
PHPで時間旅行をする方法
PHPで時間旅行をする方法
Yoshio Hanawa
More from Yoshio Hanawa
(20)
自宅の消費電力をリアルタイムに グラフ化してみた
自宅の消費電力をリアルタイムに グラフ化してみた
Zend VMにおける例外の実装
Zend VMにおける例外の実装
Zend VMにおける例外の実装
Zend VMにおける例外の実装
ぼくのかんがえる さいきょうの銀行振込
ぼくのかんがえる さいきょうの銀行振込
「OKグーグル! 銀行振込1000円」
「OKグーグル! 銀行振込1000円」
浮動小数点数とOSSのバグの話
浮動小数点数とOSSのバグの話
PHP拡張をPECLに登録してわかったこと
PHP拡張をPECLに登録してわかったこと
GitHubからお金をもらった話
GitHubからお金をもらった話
iOS/macOSとAndroid/Linuxのサンドボックス機構について調べた
iOS/macOSとAndroid/Linuxのサンドボックス機構について調べた
realpathキャッシュと OPcacheの面倒すぎる関係
realpathキャッシュと OPcacheの面倒すぎる関係
家庭用ブロードバンドルータ上でWordPressを動かそう
家庭用ブロードバンドルータ上でWordPressを動かそう
Laungage Update PHP編
Laungage Update PHP編
GitHubにバグ報告して賞金$500を頂いた話
GitHubにバグ報告して賞金$500を頂いた話
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
OPcacheの新機能ファイルベースキャッシュの内部実装を読んでみた
PHPの正規表現と最長一致
PHPの正規表現と最長一致
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
偶然にも500万個のSSH公開鍵を手に入れた俺たちは
浮動小数点数の話 2013年度版
浮動小数点数の話 2013年度版
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
PHP-FPMとuWSGI——mod_php以外の選択肢を探る
Testing PHP extension on Travis CI
Testing PHP extension on Travis CI
PHPで時間旅行をする方法
PHPで時間旅行をする方法
php-buildがいかに便利かを力説する
1.
Introduction to php-build php-buildがいかに 便利かを力説する PHP
BLT #1 (2015/11/24) 発表資料
2.
自己紹介 ❖ @hnw ❖ 22階から来ました ❖
カレーとバグが大好物 ❖ 一昨日、闇PHP勉強会の初幹事でした
3.
みなさん ❖ PHP作ってますか? ❖ PHPプログラマならPHP作りますよね
4.
作ったPHP
5.
まれにある状況 ❖ PHP本体にバグレポした ❖ 「MacOSXだけSEGVで死ぬんだけど」 ❖
「PHPリビルドしてback traceよこせ」 ❖ 「はぁ?(白目)」
6.
実話です
7.
そんなときも php-buildがあれば安心
8.
ここで質問 ❖ php-buildって聞いたことがある方? ❖ 普段使われてる方?
9.
php-buildとは ❖ 各バージョンのPHPを手元でビルドするプロジェクト ❖ 中身はbashスクリプト ❖
Travis CIでも使われている ❖ PHPのバージョンを切り替える仕組みの裏側
10.
精神的ハードルの高さ ❖ php-build、知ってても使っていない人が多いのでは? ❖ たまにしか使わないとgit
pullしてbuildして…が面倒 ❖ ここで私の使い方を見てみましょう
11.
12.
精神的ハードルを下げる(1) ❖ php-buildをphpenvのプラグインとして使う ❖ phpenv=rbenvを改造したもの。何種類か存在。 ❖
私はCHH/phpenvを使ってます ❖ 「phpenv install」でビルドできるようになる
13.
精神的ハードルを下げる(2) ❖ 「phpenv update」 ❖
php-buildのgit pullをする ❖ これを使うようになってビルドの頻度が増えた
14.
さらに便利な点(1) ❖ PHPの新バージョンの反映が早い ❖ 早いときはリリース当日 ❖
alphaやRCなど開発者向けバージョンにも対応
15.
さらに便利な点(2) ❖ 自分専用のPHPが作りやすい ❖ 例:同バージョンのPHPを何個か共存させたい ❖
definitionファイルを書くだけ
16.
definitionファイルとは ❖ 各バージョンごとのレシピ的なファイル ❖ 中身はシェルスクリプト ❖
自由度が高い
17.
definitionファイルの例 install_package "https://downloads.php.net/~ab/ php-7.0.0RC7.tar.bz2"! install_pyrus! install_xdebug "2.4.0RC1"! enable_builtin_opcache
18.
自前definitionファイルが必要な状況 ❖ configureオプションを変えたい ❖ 「--enable-debug」 ❖
「--enable-maintainer-zts」 ❖ 拡張モジュールを書く人はPHPが複数あると便利
19.
自前definitionファイルの例 export CFLAGS="-g"! export PHP_BUILD_KEEP_OBJECT_FILES="on"! configure_option
"--enable-maintainer-zts"! configure_option -D "--disable-debug"! configure_option "--enable-debug"! source $(find_definition "7.0.0RC7")
20.
まとめ ❖ php-build便利 ❖ 欲しいバージョンのPHPが気軽に作れる ❖
configureオプションの変更なども簡単 ❖ 最近phpenvのサブコマンドupdate・uninstallが増えた ❖ 便利 ❖ 使わなくなった人も再チャレンジしてみては? ❖ 細かいノウハウはブログ記事に書きます
21.
ご静聴 ありがとう ございました
Download now