2016-04-30 22 views
1

を見ることができない。gccが、私はSDL2がインストールされているが、私はMinGWので<a href="https://github.com/cyxx/rawgl" rel="nofollow noreferrer">this code</a>をコンパイルしようとしているが、私はこのエラーを取得するSDL

Error

のMakefileは次のようになります。

SDL_CFLAGS = `sdl2-config --cflags` 
SDL_LIBS = `sdl2-config --libs` -lSDL2_mixer -lGL 

DEFINES = -DBYPASS_PROTECTION 

CXXFLAGS := -g -O -MMD -Wall $(SDL_CFLAGS) $(DEFINES) 

SRCS = aifcplayer.cpp bitmap.cpp file.cpp engine.cpp graphics_gl.cpp graphics_soft.cpp \ 
    script.cpp mixer.cpp pak.cpp resource.cpp resource_nth.cpp resource_win31.cpp \ 
    resource_3do.cpp systemstub_sdl.cpp sfxplayer.cpp staticres.cpp unpack.cpp \ 
    util.cpp video.cpp main.cpp 

OBJS = $(SRCS:.cpp=.o) 
DEPS = $(SRCS:.cpp=.d) 

rawgl: $(OBJS) 
    $(CXX) $(LDFLAGS) -o [email protected] $(OBJS) $(SDL_LIBS) -lz 

clean: 
    rm -f $(OBJS) $(DEPS) 

-include $(DEPS) 
+0

[レッスン0:MinGW(SDL設定)](http://www.willusher.io/sdl2%20tutorials/2013/08/15/lesson-0-mingw) –

+0

はい、私はそれがインストールされていると確信しています。私は 'SDL.h'をコードのディレクトリにコピーしてテストしましたが、まだこのエラーがあります –

+0

リンクされたレッスンから:' #include ' –

答えて

1

GCCは、正しく伝えていないと、あなたが望むものを知りません。インストールは1つのことであり、INCLUDELIBディレクトリへのパスを提供することは別のことです。

Microsoft Windowsのコマンドプロンプトでコードを実行しているため、バックティックを使用しても機能しません。 bashでは、1つのコマンドの出力を取得してそれを配置するために使用されるため、手動で実行する必要があります。手動でsdl2-config --cflagssdl2-config --libsを実行し、メークファイルの出力に置き換えてください。それ以外の場合は

SDL_CFLAGS = -I C:/MinGW/include/SDL2 
SDL_LIBS = -L C:/MinGW/lib -lSDL2main -lSDL2 -lSDL2_mixer -lGL 

DEFINES = -DBYPASS_PROTECTION 

CXXFLAGS := -g -O -MMD -Wall $(SDL_CFLAGS) $(DEFINES) 

SRCS = aifcplayer.cpp bitmap.cpp file.cpp engine.cpp graphics_gl.cpp graphics_soft.cpp \ 
    script.cpp mixer.cpp pak.cpp resource.cpp resource_nth.cpp resource_win31.cpp \ 
    resource_3do.cpp systemstub_sdl.cpp sfxplayer.cpp staticres.cpp unpack.cpp \ 
    util.cpp video.cpp main.cpp 

OBJS = $(SRCS:.cpp=.o) 
DEPS = $(SRCS:.cpp=.d) 

rawgl: $(OBJS) 
    $(CXX) $(LDFLAGS) -o [email protected] $(OBJS) $(SDL_LIBS) -lz 

clean: 
    rm -f $(OBJS) $(DEPS) 

-include $(DEPS) 

、あなたは何の問題もなく、Windowsでのbashのすべての偉大な機能を持っているWindows用のbashを使用することができます。

これは、あなたが、あなたがSDLをインストールしたパスに応じてのためのサンプルのMakefileです。

+0

" Windows用bashを使用する "。あなたは、少し話題を拡大したり、リンクを提供してください。私は正直に言うと、それ(つまり、一般的にはC++コーディング)に慣れているわけではありません。 –

+0

@GeorgeHovhannisianさて、私はそれをします。しかし、まずMakefileをチェックし、それが動作するかどうか確認してください。 – Ho1

+0

'Makefile:21:***セパレータがありません。ストップ.'単にコピーエラーと思って、元の行をコピーし直しました。そして、私は 'make:***ターゲットを作るルールはありません/ MinGW/lib '、' aifcplayer.o'が必要です。停止してください。 –

関連する問題

 関連する問題