2015-02-12 69 views
0

我遇到了一些麻煩,因爲我是相當新的C++和Makefile文件Makefile文件的麻煩,讓「祕方目標'rgbapixel.o失敗」

我的Makefile文件看起來是這樣的:

EXENAME = testimage 
OBJS = rgbapixel.o png.o image.o testimage.o 

CXX = clang++ 
CXXFLAGS = -std=c++1y -stdlib=libc++ -lc++abi -std=c++0x -std=c++11 -std=gnu++11 -c -g -O0 -Wall -Werror -Wextra -pedantic 
LD = clang++ 
LDFLAGS = -std=c++1y -stdlib=libc++ -std=c++11 -std=gnu++11 -lpng -lc++abi 

all: $(EXENAME) 

$(EXENAME) : $(OBJS) 
    $(LD) $(OBJS) $(LDFLAGS) -o $(EXENAME) 

png.o : png.cpp png.h rgbapixel.h image.h 
    $(CXX) $(CXXFLAGS) png.cpp 

image.o : image.cpp image.h png.h rgbapixel.h 
    $(CXX) $(CXXFLAGS) c++ image.cpp 

rgbapixel.o : rgbapixel.cpp rgbapixel.h 
    $(CXX) $(CXXFLAGS) rgbapixel.cpp 

testimage.cpp : image.h png.h rgbapixel.h png.o 
    $(CXX) $(CXXFLAGS) c++ testimage.cpp -o testimage 

clean : 
    -rm -f *.o $(EXENAME) 

而且我從終端得到這個反饋:

clang++ -std=c++1y -stdlib=libc++ -lc++abi -std=c++0x -std=c++11 -std=gnu++11 -c -g -O0 -Wall -Werror -Wextra -pedantic rgbapixel.cpp 
clang: error: -lc++abi: 'linker' input unused 
Makefile:21: recipe for target 'rgbapixel.o' failed 
make: *** [rgbapixel.o] Error 1 

任何人都可以點我什麼,我做錯了正確的方向?提前致謝。

+0

你傳入連接器的命令行標誌,以編譯命令刪除。 '鏗鏘聲++'似乎是在爲此拋出一個錯誤。不要把鏈接器標誌放在你的'CXXFLAGS'中。 – 2015-02-12 04:22:38

回答

0

-lc++abi應該從CXXFLAGS