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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
てきめん tekimen
PRO
June 11, 2024
1
110
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
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
2.6k
PHP 8.5の裏話
youkidearitai
PRO
0
120
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
250
PHP Internals わいわい #3 mb_*関数を作ってみよう
youkidearitai
PRO
0
130
PHP Internals わいわい #1 の資料
youkidearitai
PRO
1
1.5k
mb_trim関数を作りました
youkidearitai
PRO
1
1.3k
PHPの次期バージョンはこの時期どうなっているのか - Internalsの開発体制について - PHPカンファレンス小田原
youkidearitai
PRO
1
1k
文字とはなにか - PHPの文字コード処理について - PHP Lovers Meetup #5
youkidearitai
PRO
1
360
はじめてのOSSコントリビュート
youkidearitai
PRO
11
5k
Featured
See All Featured
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
Site-Speed That Sticks
csswizardry
13
1.1k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.3k
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Building Adaptive Systems
keathley
44
2.9k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
130
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
Ruling the World: When Life Gets Gamed
codingconduct
0
150
How to build a perfect <img>
jonoalderson
1
4.9k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.4k
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に従いましょう • レッツコントリビュート! • これだけじゃ厳しいのはわかってるのであとはよし なに