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
130
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Windows版php-srcデバッグ方法
msys:
https://www.msys2.org/
msysのlldbを使うとデバッグできることがわかったのでスライドを作った
てきめん tekimen
PRO
June 11, 2024
More Decks by てきめん tekimen
See All by てきめん tekimen
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
810
ChatGPTを使ってRaspberry Pi Picoの処理系を書いた
youkidearitai
PRO
0
91
PHP Internals わいわい #3 PIEを使ってみよう
youkidearitai
PRO
0
70
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
340
Limit of code point for grapheme cluster in programming language side.
youkidearitai
PRO
0
93
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
2
3.6k
PHP 8.5の裏話
youkidearitai
PRO
0
150
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
340
PHP Internals わいわい #3 mb_*関数を作ってみよう
youkidearitai
PRO
0
170
Featured
See All Featured
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
260
How GitHub (no longer) Works
holman
316
150k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.6k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
750
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
380
Visualization
eitanlees
152
17k
A Modern Web Designer's Workflow
chriscoyier
698
190k
WENDY [Excerpt]
tessaabrams
11
38k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
490
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に従いましょう • レッツコントリビュート! • これだけじゃ厳しいのはわかってるのであとはよし なに