Spotlight JapaneseText.mdimporterのクラッシュ
新城@筑波大学情報です。
MacOSX 10.6 Snow Leopard で、JapaneseText.mdimporter
(http://8-p.info/Spotlight/JapaneseText-0.6.dmg.gz) を使おう
としたのですが、今一つ調子が悪いです。うまい使い方が分かれば
教えてください。
JapaneseText.mdimporter があると、様々な文字コードの日本語を
うまく Spotlight から検索できるようになります。
http://8-p.info/Spotlight/
http://macwiki.sourceforge.jp/wiki/index.php/Spotlight
バイナリとソースが配布されてしてバイナリは、Universal ではあ
りますが、32bit でコンパイルされています。それをそのまま動か
すと、動くようではありますが、次のようなエラーが出ます。
------------------------------------------------------------
Sep 21 13:47:32 hostname mdworker[21864]: Error loading /Library/Spotlight/JapaneseText.mdimporter/Contents/MacOS/JapaneseText: dlopen(/Library/Spotlight/JapaneseText.mdimporter/Contents/MacOS/JapaneseText, 262): no suitable image found. Did find:\n/Library/Spotlight/JapaneseText.mdimporter/Contents/MacOS/JapaneseText: no matching architecture in universal wrapper
------------------------------------------------------------
それではということで、ソースをコンパイルしてみとると、このエ
ラーは出なくなります。一応動くのですが、次のようにして
mdworker が SIGSEGV クラッシュします。
------------------------------------------------------------
Sep 21 16:39:37 hostname com.apple.launchd[1] (0x100501a60.mach_init.mdworker[23959]): Job appears to have crashed: Segmentation fault
Sep 21 16:39:37 hostname com.apple.ReportCrash.Root[23954]: 2010-09-21 16:39:37.621 ReportCrash[23954:3c2f] Saved crash report for mdworker[23959] version ??? (???) to /Library/Logs/DiagnosticReports/mdworker_2010-09-21-163937_localhost.crash
------------------------------------------------------------
クラッシュのログは、こんな感じ。
------------------------------------------------------------
Thread 3 Crashed:
0 ??? 0x0000000000000001 0 + 1
1 com.apple.CoreFoundation 0x00007fff87114b7d __CFBasicHashAddValue + 877
2 com.apple.CoreFoundation 0x00007fff871146cf CFBasicHashAddValue + 191
3 mdworker 0x00000001000068f0 0x100000000 + 26864
4 mdworker 0x0000000100009ef1 0x100000000 + 40689
5 libSystem.B.dylib 0x00007fff800d5456 _pthread_start + 331
6 libSystem.B.dylib 0x00007fff800d5309 thread_start + 13
Thread 3 crashed with X86 Thread State (64-bit):
rax: 0x0000000000000001 rbx: 0x00000001000d5760 rcx: 0x0000000000000000 rdx: 0x00007fff87157564
rdi: 0x00000001000d5760 rsi: 0x0000000000000016 rbp: 0x0000000100702770 rsp: 0x00000001007026d8
r8: 0x000000010050baf0 r9: 0x00000001005fc0a4 r10: 0x000000010050bb40 r11: 0x0000000000000001
r12: 0x000000010050bb40 r13: 0x00000001000d5760 r14: 0x00000001000d5760 r15: 0x0000000000000000
rip: 0x0000000000000001 rfl: 0x0000000000010202 cr2: 0x0000000000000001
Binary Images:
0x100000000 - 0x10003cfff mdworker ??? (???) <1ECEB0FE-26FE-B777-BCF5-5EE058430CF7> /System/Library/Frameworks/CoreServices.framework/Frameworks/Metadata.framework/Versions/A/Support/mdworker
0x10008c000 - 0x1000a3fe7 libJapaneseConverter.dylib 49.0.0 (compatibility 1.0.0) <1B9D1076-CC7C-521A-676C-F7BE51F65271> /System/Library/CoreServices/Encodings/libJapaneseConverter.dylib
0x1000d2000 - 0x1000d4ff7 +info.8-p.MDImporter.JapaneseText 0.6 (0.6) <D920184A-67FA-42A0-20A4-627EBABA9E3E> /Library/Spotlight/JapaneseText.mdimporter/Contents/MacOS/JapaneseText
0x7fff5fc00000 - 0x7fff5fc3bdef dyld 132.1 (???) <B536F2F1-9DF1-3B6C-1C2C-9075EA219A06> /usr/lib/dyld
...
0x7fff87105000 - 0x7fff8727aff7 com.apple.CoreFoundation 6.6.3 (550.29) <48810602-63C3-994D-E563-DD02B16E76E1> /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
------------------------------------------------------------
mdworker の 0x00000001000068f0 番地から
CFBasicHashAddValue() を呼んで死んだという所です。これだけだ
と 0x10008c000-0x1000a3fe7 番地のJapaneseText.mdimporter と
は直接は関係ないとも言えますが、クラッシュするのは、
JapaneseText.mdimporter が絡んだ時だけなので、無関係とまでは
言えないかなあと思っています。
MacOSX 10.6 での JapaneseText.mdimporter をうまく動かす方法
について何かヒントがありましたら教えてください。
でもこういうエラーが出ても、直接的には気が付かないんですよね。
たまたま top で見ていたら crash なんとかいうのが見えて、
/Applications/Utilities/Console.app を見ると、ガンガンエラー
が出てました。Console.app ではなくて、Unix 風に
tail -f /var/log/system.log でも良いです。
\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報 \\
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735