fedora 9 で yamcha と cabocha を使いたい、そう思って、make してみました。
エラーが出ます。
param.cpp:205: error: 'strlen' was not declared in this scope param.cpp:211: error: 'strlen' was not declared in this scope
ちょっと気が遠くなりかけた。そんなとき。
つまるところ、gcc 4.2 以前と gcc 4.3 の違いに起因するようです。
gcc 4.2 以前では、string.h や stdlib.h のようなヘッダファイルは明示的にインクルードしていなくても、そのヘッダファイルでプロトタイプ宣言されている関数を呼び出すことができました。
gcc 4.3 では明示的なインクルードが必要です。
とりあえず、 src/common.h に #include <string.h> を追加して make してみます。
できました!パッチはこちら。
適用例
wget http://chasen.org/~taku/software/cabocha/src/cabocha-0.53.tar.gz tar zxvf cabocha-0.53.tar.gz patch -p0 < cabocha.patch cd cabocha-0.53 ./configure --prefix=/usr/local make make check make install cd .. rm -rf cabocha-0.53