Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Windows版php-srcデバッグ方法
Search
てきめん tekimen
PRO
June 11, 2024
1
74
Windows版php-srcデバッグ方法
msys:
https://www.msys2.org/
msysのlldbを使うとデバッグできることがわかったのでスライドを作った
てきめん tekimen
PRO
June 11, 2024
Tweet
Share
More Decks by てきめん tekimen
See All by てきめん tekimen
PHP Internals わいわい #3 mb_*関数を作ってみよう
youkidearitai
PRO
0
93
PHP Internals わいわい #1 の資料
youkidearitai
PRO
1
1.4k
mb_trim関数を作りました
youkidearitai
PRO
1
1k
PHPの次期バージョンはこの時期どうなっているのか - Internalsの開発体制について - PHPカンファレンス小田原
youkidearitai
PRO
1
840
文字とはなにか - PHPの文字コード処理について - PHP Lovers Meetup #5
youkidearitai
PRO
1
300
はじめてのOSSコントリビュート
youkidearitai
PRO
11
4.4k
文字とはなにか - PHPの文字コード処理について -
youkidearitai
PRO
0
870
現在のmbstringの立ち位置 これからどうなっていくのか
youkidearitai
PRO
0
440
PHP 8.3のmbstringの進化を見てください - コントリビューターとしてのかかわり -
youkidearitai
PRO
0
1.4k
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Become a Pro
speakerdeck
PRO
29
5.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Balancing Empowerment & Direction
lara
2
590
Facilitating Awesome Meetings
lara
55
6.5k
Scaling GitHub
holman
462
140k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Transcript
PHP Internals わいわい Windows番外編
コンパイルの前段階 • Windowsを用意します • コマンドプロンプトで頑張ります • Visual C++ 2019をインストールします –
https://visualstudio.microsoft.com/ja/vs/older-down loads/ – (追記: 最近になってVisual C++ 2022で動くようになりまし た。その際にはvs17と読み替えてください)
PHPのコンパイルの準備 > cd C:\ > git clone https://github.com/php/php-sdk-binary-tools php- sdk
> cd php-sdk > .\phpsdk-vc16-x64.bat > phpsdk_buildtree phpdev > cd vc16\x64 > git clone https://github.com/php/php-src
PHPのコンパイルの準備 > cd php-src > .\buildconf.bat -f > .\configure.bat --enable-debug
--enable-mbstring > nmake > nmake test > x64\Debug_TS\php.exe -v #これで実行できる!
デバッグ手法 msysをインストールします https://www.msys2.org/ msysから起動し、lldbのインストールをします $ pacman -S mingw-w64-x86_64-lldb コマンドプロンプトで以下を叩き、レッツデバッグ! C:\msys64\mingw64\bin\lldb.exe
x64\Debug_TS\php.exe (環境変数通しておくと良いですね)
テストについて https://www.phpinternalsbook.com/tests/runn ing_the_test_suite.html > x64\Debug_TS\php.exe run-tests.php # すべて のテストを行う >
x64\Debug_TS\php.exe run-tests.php -P ext/mbstring # mbstring拡張のみテストする
テストファイルについて https://www.phpinternalsbook.com/tests/phpt _file_structure.html .phptファイルを使ってテストを行います
あとはPHP Internals Bookに従いましょう • レッツコントリビュート! • これだけじゃ厳しいのはわかってるのであとはよし なに