京都大学の高橋です。

<20010217092518D.nnakamur / mxq.mesh.ne.jp>の記事において
nnakamur / mxq.mesh.ne.jpさんは書きました。

>> pdflib-0.51 をコンパイルしてみたのですが、私の
>> ところでは、shared ライブラリがなかったので、
>> ruby extconf.rb したときに libpdf* not found! と
>> 言われてしまいました。
>> 
>> 一応 .a も見るように こう↓してみましたが、
>> 良く考えると、.so.* を .a  より先に見るように
>> しないと本当はダメかも…。
>> 
>> *** extconf.rb.org      Sat Nov 18 00:35:18 2000
>> --- extconf.rb  Sat Feb 17 09:05:30 2001
>> ***************
>> *** 2,9 ****
>>   
>>   pdflib = ""
>>   [ "/usr/lib", "/usr/local/lib" ].each do |path|
>> !   lib = Dir[path + "/libpdf*so*"]
>> !   if lib.size > 0 && /lib(pdf.*)\.so.*/ =~ lib.shift
>>       pdflib = $1.to_s
>>       $LDFLAGS = "-L" + path
>>       break
>> --- 2,9 ----
>>   
>>   pdflib = ""
>>   [ "/usr/lib", "/usr/local/lib" ].each do |path|
>> !   lib = Dir[path + "/libpdf*.{a,so*}"]
>> !   if lib.size > 0 && /lib(pdf.*)\.(a|so.*)/ =~ lib.shift
>>       pdflib = $1.to_s
>>       $LDFLAGS = "-L" + path
>>       break

  この辺りのコードは、昔 PDFlib ver.2.01 の頃、
普通に ./configure & make & make install すると
/usr/local/lib/libpdf2.01.so
などという名前でインストールされていたのに対応するためのものなので、
PDFlib ver3 になって libpdf.* という名前でインストールされるように
なった今では、単に

require 'mkmf'

if have_header("pdflib.h") &&
    have_library("z", "inflate") &&
    have_library("jpeg", "jpeg_CreateDecompress") &&
    have_library("tiff", "TIFFOpen") &&
    have_library("png", "png_init_io") &&
    have_library("pdf", "PDF_boot")
  create_makefile "pdflib"
end

だけで良いでしょう。
僕自身 PDFlib ver.2.x の環境がもうなく
ver.2.x をサポートする気もあまりないので、
この簡単な extconf.rb にしてしまおうかと思います。

  あと、PDFlib ver.3.03 ではいくつかの関数が提供されなくなり、
それに対応するメソッドを使おうとするとシンボルが未解決だと怒られる
という問題があります。
(ご報告ありがとうございました > たかはし@jbtさん)
これに対処した Ruby/PDFlib ver.0.6 を
http://www-nh.scphys.kyoto-u.ac.jp/~thitoshi/ruby/pdf.html
に置きましたので、どうぞお試し下さい。

-------------------------------------------------------------------
                       TAKAHASHI Hitoshi
      Experimental Nuclear and Hadronic Physics Laboratory
             Department of Physics, Kyoto University
            E-mail: thitoshi / nh.scphys.kyoto-u.ac.jp
  URL: http://www-nh.scphys.kyoto-u.ac.jp/~thitoshi/member.html
-------------------------------------------------------------------