[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[plamo:07775] Re: unable to buile Canna on glibc2.2?



a) ローカルなヘッダファイルの中に

# define bzero(buf, size) memset((char *)(buf), 0x00, (size))
# define bcopy(src, dst, size) memcpy((char *)(dst), (char *)(src), (size))

という記述がある。

b) その後にインクルードされる strings.h の中に

extern void bcopy (__const void *__src, void *__dest, size_t __n) __THROW;
extern void bzero (void *__s, size_t __n) __THROW;

という記述がある。

c) したがって、関数宣言の中でマクロ展開が行われてしまう。
   (そして parse error になる。)

というのが直接的な原因です。

根本的には標準のヘッダファイルをインクルードする前に
余計な定義をしているせいといえるかもしれません。
しかし、 strings.h の方も関数宣言の前に

#undef bcopy
#undef bzero

としておけばエラーにならないはずです。

対策としては、ローカルなヘッダファイルの中の
該当する部分をコンパイルしないことです。
該当するヘッダファイルは ccustom/canna.h, lib/RK/RKintern.h, 
lib/RKC/rkc.h, server/IR.h です。

Y.Ishiyama 
ishiyosi@di.pdx.ne.jp

Follow-Ups
[plamo:07776] Re: unable to buile Canna on glibc2.2?, Yoshinori Ariie

[検索ページ] [メール一覧]
Plamo ML 公開システム