2006年8月10日の日記の1番目の記事へのコメント

libpng-1.2.12とImageMagick-6.2.8

x86_64だとImageMagickのmake checkが通らんぞー.png絡みで「undefined symbol: png_get_asm_flags」とか言ってます.libpngのソースにはこの関数はあるんですが,libpng.soには無いっすね.

libpngのpngget.cを見ると「PNG_ASSEMBLER_CODE_SUPPORTED」がdefineされてる場合に限りこの関数ができるようです.んで,「PNG_ASSEMBLER_CODE_SUPPORTED」自体はpngconf.hでdefineされてます.ただ,「PNG_NO_ASSEMBLER_CODE」が定義されてるとdefineされないようになってて,Makefile見たら「-DPNG_NO_ASSEMBLER_CODE」って書いてありました.なるほど.

で,ImageMagick側ではpng.hをincludeしていて,その中でpngconf.hがincludeされてるわけですが,pngconf.hはMake時の「-DPNG_NO_ASSEMBLER_CODE」なんか知らないわけで,あっさり「PNG_ASSEMBLER_CODE_SUPPORTED」がdefineされてしまい,その結果ImageMagickのpng.cは「png_get_asm_flags」を使うようにコンパイルされちゃう,と・・・(;´Д`).面倒くさいんでinclude/pngconf.hに「#define PNG_NO_ASSEMBLER_CODE」書き足して解決.このクオリティは微妙だ.

お名前:  メールアドレス(省略可):
メールアドレスも表示されます
ここに名前その他を書いてはいけません: ここにメールアドレスその他を書いてはいけません:

2006年8月10日の日記の1番目の記事へのコメント

中の人情報

名前:
nosuke (のすけ)
メール:
sasugaanijaのgmail.com
「の」は「@」みたいな
関連リンク:

カレンダー

2006年8月
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ