我使用UBuntu 12.04 LTS和gcc 4.8.1。我想构建并安装Thrift 0.9.1。首先我运行./configure
,然后运行make
,然后我得到一条警告(未使用的变量)被视为错误的信息。我不想修改Thrift源代码,因此我需要禁用该gcc功能,但Makefile不包含任何 -Werror 标志。如何解决?
答案 0 :(得分:0)
我也试图在我的Ubuntu 12.04上使用GCC 4.8构建节俭0.9.1。我没有将任何未使用的变量警告视为错误,但确实未使用本地typedef警告,导致构建失败。我想这与你遇到的情况相同。
在GCC 4.8中,-WAll
启用了一种新类型的警告:默认为-Werror=unused-local-typedefs
。配置时传递-Wno-unused-local-typedefs
可以解决您的问题:
CPPFLAGS=-Wno-unused-local-typedefs ./configure --without-tests
请注意,我是CPPFLAGS
而不是CXXFLAGS
和CFLAGS
。 thrift 0.9.1的构建脚本以某种方式无法将CFLAGS传递给c_glib目录下的Makefile,而CPPFLAGS却没有。
此外,0.9.1源代码tarball在某些测试中发布了编译问题。这就是我加入--without-tests
选项的原因。