まず、この問題についてインターネット全体を検索しましたが、まだ解決策を見つけることができませんでした。
私は Mac mini PowerPC (PPC) を持っていて、PHP (5.4.0) で Apache Web サーバー (httpd-2.2.22) を実行し、すべての構成とコンパイルのジョブを自分で行います。
'./configure' '--prefix =
/usr/local/php5' '--mandir=/usr/share/man' '--infodir=/usr/share/info' '--sysconfdir= /etc' '--with-config-file-path=/etc' '--with-zlib' '--with-zlib-dir=/usr' '--with-openssl=/usr' '--without -iconv''--enable-exif''--enable-ftp''--enable-mbstring''--enable-mbregex''--enable-sockets''--with-mysql=/usr/local/ mysql' '--with-pdo-mysql=/usr/local/mysql' '--with-mysqli=/usr/local/mysql/bin/mysql_config' '--with-apxs2=/usr/local/apache2/ bin/apxs'' --with-mcrypt'
その後、PHP は問題なく動作します。しかし、上記のスクリプトにこれらを追加して GD モジュールを追加すると、次のようになります。
'--with-gd' '--with-jpeg-dir=/usr/local/lib' '--with-freetype-dir=/usr/X11R6' '--with-png-dir=/usr/X11R6 ''--with-xpm-dir=/usr/X11R6'
PHP はエラーなしで構成およびコンパイルされますが、PHP モジュールを呼び出すページを要求すると、EXC_BREAKPOINT (SIGTRAP) (以下の Crash Reporter ログを参照) が発生します。
GD モジュールに関連する何かがこれを引き起こしていることは明らかです。ログに存在するため、おそらく FreeType モジュールですが、もちろん明確ではない可能性があります。
PHP がクラッシュすると (より正確には httpd)、CPU は回復するまで 10 秒から 15 秒間 100% になります。
GD モジュールを使用し、Mac mini PowerPC を保持する必要があります。では、この問題を解決するにはどうすればよいでしょうか。
プロセス: httpd [79852] パス: /usr/local/apache2/bin/httpd 識別子: httpd バージョン: ???(???) コードタイプ: PPC (ネイティブ) 親プロセス: httpd [79846] 日時: 2013-11-04 15:44:28.444 +0200 OS バージョン: Mac OS X 10.5.8 (9L31a) レポートのバージョン: 6 匿名 UUID: 0178B7F8-2241-43F7-A651-9E7234D41A37 例外タイプ: EXC_BREAKPOINT (SIGTRAP) 例外コード: 0x0000000000000001、0x0000000093c11e0c クラッシュしたスレッド: 0 アプリケーション固有の情報: *** シングルスレッド プロセスがフォークされました *** スレッド 0 がクラッシュしました: 0 com.apple.CoreFoundation 0x93c11e0c __CFRunLoopFindMode + 328 1 com.apple.CoreFoundation 0x93c13d88 CFRunLoopAddSource + 276 2 com.apple.DiskArbitration 0x901a6e8c DAApprovalSessionScheduleWithRunLoop + 52 3 ...ple.CoreServices.CarbonCore 0x9512e67c _FSGetDiskArbSession(__DASession**, __DAApprovalSession**) + 540 4 ...ple.CoreServices.CarbonCore 0x9512e420 CreateDiskArbDiskForMountPath(char const*) + 84 5 ...ple.CoreServices.CarbonCore 0x9512d2c8 FSCacheableClient_GetVolumeCachedInfo(char const*, statfs const*, CachedVolumeInfo*, __DADisk*, __DADisk**) + 280 6 ...ple.CoreServices.CarbonCore 0x9512cca4 MountVolume(char const*, statfs*, unsigned char, unsigned char, __DADisk*, short*) + 352 7 ...ple.CoreServices.CarbonCore 0x9512ca48 MountInitialVolumes() + 172 8 ...ple.CoreServices.CarbonCore 0x9512c4d4 INIT_FileManager() + 164 9 ...ple.CoreServices.CarbonCore 0x9512c390 GetRetainedVolFSVCBByVolumeID(unsigned long) + 48 10 ...ple.CoreServices.CarbonCore 0x9512adf4 PathGetObjectInfo(char const*, unsigned long, unsigned long, VolumeInfo**, unsigned long*, unsigned long*, char*, unsigned long*, unsigned char*) + 184 11 ...ple.CoreServices.CarbonCore 0x9512acc4 FSPathMakeRefInternal(unsigned char const*, unsigned long, unsigned long, FSRef*, unsigned char*) + 64 12 libfreetype.6.dylib 0x0070a0fc FT_New_Face_From_Resource + 56 13 libfreetype.6.dylib 0x0070a3b0 FT_New_Face + 48 14 libphp5.so 0x0118d1a8 fontFetch + 824 15 libphp5.so 0x0118edac php_gd_gdCacheGet + 220 16 libphp5.so 0x0118d6d8 php_gd_gdImageStringFTEx + 360 17 libphp5.so 0x011763c0 php_imagettftext_common + 1504 18 libphp5.so 0x01176494 zif_imagefttext + 20 19 libphp5.so 0x014b9c68 zend_do_fcall_common_helper_SPEC + 1048 20 libphp5.so 0x01452898_ZEND_DO_FCALL_SPEC_CONST_HANDLER + 440 21 libphp5.so 0x014ba878 実行 + 776 22 libphp5.so 0x013f190c zend_execute_scripts + 316 23 libphp5.so 0x013779f4 php_execute_script + 596 24 libphp5.so 0x014bbe64 php_handler + 1972 25 httpd 0x000020c0 ap_run_handler + 96 26 httpd 0x00006ae0 ap_invoke_handler + 224 27 httpd 0x000305c4 ap_process_request + 116 28 httpd 0x0002c768 ap_process_http_connection + 104 29 httpd 0x00012d30 ap_run_process_connection + 96 30 httpd 0x00012ecc ap_process_connection + 92 31 httpd 0x000373e4 child_main + 1220 32 httpd 0x000376a8 make_child + 296 33 httpd 0x000377e4 startup_children + 100 34 httpd 0x000387d4 ap_mpm_run + 3988 35 httpd 0x0000a320 メイン + 3280 36 httpd 0x000019c0 開始 + 64