我正在尝试为我的项目编写Makefile。 这是文件结构:
生成文件:
CXXFLAGS = -ISDL2/include -std=c++11
LXXFLAGS = -lSDL2/lib/x86 -lSDL2main -lSDL2 -lSDL2_image
main.exe: main.o BoardField.o ChessPiece.o Game.o
g++ main.o BoardField.o ChessPiece.o Game.o -o main.exe $(LXXFLAGS) -std=c++11
main.o: main.cpp
g++ main.cpp -c $(CXXFLAGS)
BoardField.o: BoardField.cpp
g++ BoardField.cpp -c $(CXXFLAGS)
ChessPiece.o: ChessPiece.cpp
g++ ChessPiece.cpp -c $(CXXFLAGS)
Game.o: Game.cpp
g++ Game.cpp -c $(CXXFLAGS)
我得到了这些错误:
g ++ main.o BoardField.o ChessPiece.o Game.o -o main.exe -lSDL2 / lib / x86 -lSDL2main -lSDL2 -lSDL2_image -std = c ++ 11 c:/ mingw / bin /../ lib / gcc / mingw32 / 6.3.0 /../../../../ mingw32 / bin / ld 。可执行程序: 找不到-lSDL2 / lib / x86 C:/ MinGW的/ bin中/../ LIB / GCC /的mingw32 / 6.3.0 /../../../../的mingw32 / bin中/ ld.exe: 找不到-lSDL2main C:/ MinGW的/ bin中/../ LIB / GCC /的mingw32 / 6.3.0 /../../../../的mingw32 / bin中/ ld.exe: 找不到-lSDL2 C:/ MinGW的/ bin中/../ LIB / GCC /的mingw32 / 6.3.0 /../../../../的mingw32 / bin中/ ld.exe: 找不到-lSDL2_image
问题出在哪里?
答案 0 :(得分:5)
-lSDL2/lib/x86
不正确。您使用小写-l
选项,该选项用于添加库以进行链接,而不是搜索库的路径。
要添加路径,请使用大写-L
选项:-LSDL2/lib/x86