禁用clang C ++ 11警告

时间:2013-05-19 20:37:15

标签: c++11 warnings clang

我不能为了我的生活而得到警告,不要再向我发出有关C ++ 11扩展的警告。无论我在哪里使用“auto”或任何其他C ++ 11扩展,它都会发出警告。

我有标记-Wno-c++11-extension,但仍会打印它们。

这是我的makefile:

CXX = clang++
CXXFLAGS = -std=c++11 -Wall -Wno-c++11-extensions
LIBS = -lglfw -lGL -lGLU -lGLEW

OBJ_DIR = bin
LIB_DIR = -L/usr/lib
INC_DIR = -I/usr/include

SOURCE = $(wildcard *.cpp)
OBJECTS = ${SOURCE:%.cpp=$(OBJ_DIR)/%.o}
EXECUTABLE = vox
ARGS = -w1024 -h800

.PHONY: init clean

all: init $(OBJECTS) $(EXECUTABLE)

$(EXECUTABLE): $(OBJECTS)
    $(CXX) $(CXXFLAGS) $(LIB_DIR) -o $@ $(OBJECTS) $(LIBS)

$(OBJ_DIR)/%.o: %.cpp
    $(CXX) $(INC_DIR) -c $< -g -o $@ 

run: init $(EXECUTABLE)
    @echo $(ls . | grep *.cpp)
    @./$(EXECUTABLE) $(ARGS)

init:
    @mkdir -p "$(OBJ_DIR)"

clean:
    @rm -rf $(OBJ_DIR) $(EXECUTABLE)

这是我的clang++ --version输出

Ubuntu clang version 3.2-1~exp5ubuntu1~precise1 (tags/RELEASE_32/final) (based on LLVM 3.2)
Target: x86_64-pc-linux-gnu
Thread model: posix

1 个答案:

答案 0 :(得分:6)

您还需要将所有编译器选项传递给编译步骤:

$(OBJ_DIR)/%.o: %.cpp
    $(CXX) $(CXXFLAGS) $(INC_DIR) -c $< -g -o $@ 
#          ^^^^^^^^^^^