星号:包含文件module.h中的错误

时间:2017-07-03 09:34:46

标签: c asterisk

我在编写自定义资源模块(特别是应用程序)时遇到问题。在尝试编译Asterisk时,我收到有关标准星号包含的module.h的错误。错误如下:

In file included from res_application.c:6:0:
/usr/local/src/asterisk-14.4.1/include/asterisk/module.h:526:22: error: expected ',' or ';' at end of input
  static const struct ast_module_info *ast_module_info = &__mod_info
                      ^

我还没有找到这个错误背后的原因。我可以在编写模块之前构建Asterisk并运行服务器,所以我很惊讶现在看到这个错误了。任何帮助赞赏。提前谢谢。

编辑:来源代码段:

/* EMBEDDED_MODULE */

#define AST_MODULE_INFO(keystr, flags_to_set, desc, fields...)  \
        static struct ast_module_info                           \
                __MODULE_INFO_SECTION                           \
                __mod_info = {                                  \
                __MODULE_INFO_GLOBALS                           \
                .name = AST_MODULE,                             \
                .flags = flags_to_set,                          \
                .description = desc,                            \
                .key = keystr,                                  \
                .buildopt_sum = AST_BUILDOPT_SUM,               \
                fields                                          \
        };                                                      \
        static void  __attribute__((constructor)) __reg_module(void) \
        { \
                ast_module_register(&__mod_info); \
        } \
        static void  __attribute__((destructor)) __unreg_module(void) \
        { \
                ast_module_unregister(&__mod_info); \
        } \
        struct ast_module *AST_MODULE_SELF_SYM(void)                       \
        {                                                                  \
                return __mod_info.self;                                        \
        }                                                                  \
        static const struct ast_module_info *ast_module_info = &__mod_info

#define AST_MODULE_INFO_STANDARD(keystr, desc)              \
        AST_MODULE_INFO(keystr, AST_MODFLAG_LOAD_ORDER, desc,   \
                        .load = load_module,                            \
                        .unload = unload_module,                        \
                        .load_pri = AST_MODPRI_DEFAULT,                 \
                        .support_level = AST_MODULE_SUPPORT_CORE,       \
                       )

#define AST_MODULE_INFO_STANDARD_EXTENDED(keystr, desc)     \
        AST_MODULE_INFO(keystr, AST_MODFLAG_LOAD_ORDER, desc,   \
                        .load = load_module,                            \
                        .unload = unload_module,                        \
                        .load_pri = AST_MODPRI_DEFAULT,                 \
                        .support_level = AST_MODULE_SUPPORT_EXTENDED,   \
                       )

#define AST_MODULE_INFO_STANDARD_DEPRECATED(keystr, desc)   \
        AST_MODULE_INFO(keystr, AST_MODFLAG_LOAD_ORDER, desc,   \
                        .load = load_module,                            \
                        .unload = unload_module,                        \
                        .load_pri = AST_MODPRI_DEFAULT,                 \
                        .support_level = AST_MODULE_SUPPORT_DEPRECATED, \
                       )

#endif

0 个答案:

没有答案