最近暇があるとFreeBSDのportsをこまめにアップデートするようになりました。
いい傾向なのかどうなのかは分かりませんが、1000個アップデートするとかないので気が楽です。
さて、gnome-speech-0.4.25_1にアップデートするとespeakでつまづきました。
(FreeBSDは9.2-RELEASE)
エラーメッセージを読んでみるとspeak_lib.hがないとのこと。
speak_lib.hはespeak-1.47.11でインストールされており(2013/11/30現在)、/usr/local/include/espeak配下にインストールされています。
で、問題になったコンパイルの書式を読むと
cc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../.. -I../../gnome-speech -I/usr/local/include/libbonobo-2.0 -I/usr/local/include/bonobo-activation-2.0 -I/usr/local/include/orbit-2.0 -DORBIT2=1 -pthread -I/usr/local/include/glib-2.0 -I/usr/local/include -Wall -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-sign-compare -I/usr/include/espeak -I/usr/local/include -O2 -pipe -fno-strict-aliasing -MT espeakspeaker.o -MD -MP -MF .deps/espeakspeaker.Tpo -c -o espeakspeaker.o espeakspeaker.c
/usr/local/include/espeakは呼び出されていませんね。
代わりに/usr/include/espeakが呼び出されています。
これはMakefileの問題?ということでwork/gnome-speech-0.4.25/drivers/espeak配下のMakefileを覗くと
espeak_INCLUDES = /usr/include/espeak
このMakefile自体はmake時に生成されるものです。
ちなみにこの現象はオプションでESPEAKをOFFにすると出てきます。
面倒だ、という場合は以下のコマンドで再設定を。
# make rmconfig
# make config
(ESPEAKにチェックを入れる)
どうしてもそのまま進みたいという方は上記のMakefileにて正しいパスを設定してあげると通ります。
espeak_INCLUDES = /usr/local/include/espeak
エラーメッセージから追うのは大変ですが面白くもあります。
自分で開発しているときのエラーメッセージはイライラしますけどね...。