wurfl nginx 构建错误

wurfl nginx build errors

我在尝试使用 Wurfl 构建 Nginx 时遇到构建错误。我在 Centos7 VM 中 运行,将 nginx 与其他模块组合并指定其他标志似乎不会对我造成任何问题。但是,当我尝试与 wurfl 模块捆绑时,它失败了。它会给出如下错误:

            -o objs/addon/src/ngx_http_wurfl_module.o \
        ../src/ngx_http_wurfl_module.c
../src/ngx_http_wurfl_module.c:63:5: error: unknown type name ‘wurfl_useragent_priority’
     wurfl_useragent_priority useragent_priority;
     ^
../src/ngx_http_wurfl_module.c:86:15: error: ‘WURFL_UPDATER_FREQ_DAILY’ undeclared here (not in a function)
     {"DAILY", WURFL_UPDATER_FREQ_DAILY},
               ^
../src/ngx_http_wurfl_module.c:86:5: error: missing initializer for field ‘value’ of ‘nginx_wurfl_updater_frequency_t {aka const struct <anonymous>}’ [-Werror=missing-field-initializers]
     {"DAILY", WURFL_UPDATER_FREQ_DAILY},
     ^
../src/ngx_http_wurfl_module.c:82:15: note: ‘value’ declared here
     const int value;
               ^
../src/ngx_http_wurfl_module.c:87:16: error: ‘WURFL_UPDATER_FREQ_WEEKLY’ undeclared here (not in a function)
     {"WEEKLY", WURFL_UPDATER_FREQ_WEEKLY},
                ^
../src/ngx_http_wurfl_module.c:87:5: error: missing initializer for field ‘value’ of ‘nginx_wurfl_updater_frequency_t {aka const struct <anonymous>}’ [-Werror=missing-field-initializers]
     {"WEEKLY", WURFL_UPDATER_FREQ_WEEKLY},
     ^
../src/ngx_http_wurfl_module.c:82:15: note: ‘value’ declared here
     const int value;
               ^
In file included from src/core/ngx_core.h:58:0,
                 from ../src/ngx_http_wurfl_module.c:22:
../src/ngx_http_wurfl_module.c: In function ‘ngx_http_wurfl_init_main_conf’:
../src/ngx_http_wurfl_module.c:694:93: error: implicit declaration of function ‘wurfl_get_api_version’ [-Werror=implicit-function-declaration]
         ngx_log_error(NGX_LOG_NOTICE, cf->log, 0, "WURFL: Engine created - API version %s", wurfl_get_api_version()

我正在尝试使用最新的稳定版 nginx、昨天拉出的 wurfl 和 gcc 5.3.1 进行构建。我或多或少使用了 WURFL 提供的通用构建脚本。

大家有什么想法吗?

所以 WURFL 模块有几个组件,看起来问题可能是不同组件不匹配。我会确保您的 libwurfl 和 wurfl infuze 版本号相同(最新版本是 1.8.4)。查看 documentation 的第一部分,了解有关如何安装 libwurfl 的更多信息。

接下来我将确保您的 nginx.conf 文件适用于您正在使用的 wurfl 版本。 wurfl 的最近几个版本发生了一些重大变化,可能会影响其性能。您可以查看 documentation 以获取最新版本 wurfl 的示例配置文件。如果您使用的是旧版本,可以查看发行版随附的自述文件。

如果修复这些没有帮助,请告诉我您正在使用的 infuze 版本号,以便我可以尝试重现您的问题。