2

私は最近、C++で小さなプロジェクトを開始しました。単純なMakefileを作成しました。

    CC=g++
    CFLAGS =-std=c++0x -I. -c
    VPATH = src include



    vpath %.c src

    vpath %.h include

    TabooSearch : main.o Task.o TabooList.o
                  $(CC) $(CFLAGS) -o TabooSearch main.o Task.o TabooList.o

問題は、実行makeするとgccからこの種のエラーが発生する
error: ‘nullptr’ was not declared in this scope
ことです。Makefileの何が問題になっているのかわからないので、誰かがこの問題の解決を手伝ってくれますか。私のgccバージョンはDebianで4.7.2です
よろしくお願いします

4

1 に答える 1

5

.oファイルのビルドに暗黙のルールを使用しているCXXFLAGSため、C++フラグを設定するために使用する必要があります。

CXXFLAGS = -std = c ++ 0x

-I.またはの必要はありません-c

適切なエラーと警告を取得するために、さらにいくつかのフラグを追加します。

CXXFLAGS:= -Wall -Wextra -pedantic-errors -std + c ++ 0x

同様にg++。デフォルト設定でg++が呼び出されない場合は、追加する必要があります

CXX = g ++

于 2012-12-11T20:49:17.647 に答える