Takashi Hiromatsu
matsu****@ca2*****
2008年 2月 6日 (水) 15:44:41 JST
ご指摘、有難う御座います。 こんな所でしたか。見落としてました。 cygwin に、snprintf は有るけれど、_snprintf に読み替えられてるので、エラー を吐いたということですね。 廣松 At Wed, 06 Feb 2008 13:30:31 +0900, Masayuki ASAHARA wrote: > > 奈良先端大の浅原です。 > > 千葉大の伝さんに教わりましたが、 > 以下のようにすればコンパイルできるようです。 > > ーーーー > mecab-0.97 の Cygwin 上でのコンパイルですが、src/common.h の冒頭部を > > ---------------------------------------------------------------------- > // tricky macro for MSVC > #if defined(_MSC_VER) || defined(__CYGWIN__) > #define for if (0); else for > /* why windows.h define such a generic macro */ > #undef max > #undef min > #endif <-- !!! > #if defined(_MSC_VER) <-- !!! > #define snprintf _snprintf > #endif > ---------------------------------------------------------------------- > > のように変更すると、コンパイルできるようです。 > > Takashi Hiromatsu さんは書きました: > > 御世話になっています。廣松です。 > > > > cygwin には、snprintf() が無い様なので、eval.cpp のコンパイルでエラーになり > > ます。 > > > > ---------------------------------------------------------------------------- > > > > /bin/sh ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC="\"/usr/local/etc/mecabrc\"" -O3 -Wall -Wno-deprecated -c -o eval.lo eval.cpp > > g++ -DHAVE_CONFIG_H -I. -I.. -DDIC_VERSION=102 -DMECAB_DEFAULT_RC=\"/usr/local/etc/mecabrc\" -O3 -Wall -Wno-deprecated -c eval.cpp -o eval.o > > eval.cpp: In static member function `static void MeCab::Eval::printeval(std::ostream*, size_t, size_t, size_t)': > > eval.cpp:77: error: `_snprintf' undeclared (first use this function) > > eval.cpp:77: error: (Each undeclared identifier is reported only once for each function it appears in.) > > make[2]: *** [eval.lo] エラー 1 > > > > ---------------------------------------------------------------------------- > > > > _______________________________________________ > > mecab-users mailing list > > mecab****@lists***** > > http://lists.sourceforge.jp/mailman/listinfo/mecab-users >