Aspell不再以OS X 10.9(小牛队)为基础

时间:2014-08-20 02:06:03

标签: macports aspell fink

因此失败了:

./common/errors.hpp:17:36: error: redefinition of 'aerror_other' with a different type: 'const acommon::ErrorInfo *const' vs 'const struct AspellErrorInfo *const'

我已经多次看到这个错误,但我没有看到任何修复。

我想我可以安装Fink或MacPorts,但我对这两者的经验混合(令人沮丧),而且对于一个程序来说似乎有些过分。有没有办法让aspell构建,或者Fink或MacPorts是唯一可行的选择?哪个会导致更少的问题,Fink或MacPorts?

2 个答案:

答案 0 :(得分:4)

这些externs的定义不适用于C ++ - 在interfaces/cc/aspell.h中使用这些预处理器标记包围整个块:

#ifndef __cplusplus
extern const struct AspellErrorInfo * const aerror_other;
...snip...
extern const struct AspellErrorInfo * const aerror_invalid_expression;
#endif

答案 1 :(得分:1)

@lotsoffreetime的答案有效但需要澄清。

基本上,您必须通过添加

来编辑interfaces/cc/aspell.h文件
#ifndef __cplusplus

在“extern”错误列表之前,以:

开头
  

extern const struct AspellErrorInfo * const aerror_other;

并添加

#endif

在列表末尾,在读取之后

  

extern const struct AspellErrorInfo * const aerror_invalid_expression;