Mọi người có thể hướng dẫn em chi tiết cách cài SDL và visual studio hoặc code block được không ạ. Em làm theo hướng dẫn trên laztfoo.net
toàn bị lỗi như hình.
Hỏi cách cài sdl
em vô trang http://www.msys2.org/, down đúng phiên bản tương ứng với Win của em là 32-bit hoặc 64-bit về. (x86_64 là 64bit, i686 là 32bit). Ví dụ là 64bit: down cái msys2-x86_64-20161025.exe
về, rồi install nó vô, ví dụ H:\msys2_64
Sau đó vô Start Menu -> MSYS2 64-bit -> MSYS2 MSYS
:
Nó hiện ra màn hình thế này:
Gõ:
pacman -Syu
rồi nhấn enter hết cho nó update msys.
Sau đó tắt cửa sổ, rồi open nó lại (Start Menu -> MSYS2 64-bit -> MSYS2 MSYS). Sau đó gõ tiếp:
pacman -S make tar mingw-w64-x86_64-gcc mingw-w64-x86_64-gdb
nhấn enter cho nó install phiên bản gcc mới nhất vô.
Xong xuôi gõ tiếp
pacman -Ss x86_64-sdl2
em sẽ thấy nó hiện 1 đống thư viện cho SDL2, install hết vô:
pacman -S mingw-w64-x86_64-SDL2 mingw-w64-x86_64-SDL2_gfx mingw-w64-x86_64-SDL2_image mingw-w64-x86_64-SDL2_mixer mingw-w64-x86_64-SDL2_net mingw-w64-x86_64-SDL2_ttf
Install xong xuôi hết thư viện, tắt cái window msys đi, vô Start Menu -> MSYS2 64-bit -> MSYS2 MinGW 64-bit,
nó hiện ra 1 console khác, em gõ mấy lệnh như g++ --version
rồi which sdl2.dll
make --version
để xác nhận là install thành công
Sau đó em mở Codeblocks lên, vô Settings -> Compiler…
chọn Copy, rồi Rename lại thành tên khác, vd MSYS2 MinGW 64-bit, rồi gõ vào đúng tên đường dẫn tới thư mục mingw64, rồi chọn thẻ Toolchain execuatables chỉnh cho đúng mấy cái Program Files
nếu cần thì chọn Compiler này làm default compiler cũng được, bằng cách bấm vô button Set as default.
Nhấn Finish để hoàn tất tạo compiler mới cho C::B.
Sau đó Create new project, chọn Empty Project, đặt tên, rồi chọn Compiler cho đúng:
trước khi build thì em cần link thư viện SDL cho nó: vô Project -> Build Options…
trong cột bên phải, nhấn vô tên project (đừng nhấn vô Debug hay Release)
bên trái chọn thẻ Linker settings, trong mục Other linker options, thêm -lmingw32 -lSDL2main -lSDL2
cuối cùng chọn New->Empty file->Lưu nó lại với tên main.cpp
, chọn cả Debug & Release.
copy nội dung này vô main.cpp
#include <SDL2/SDL.h>
int main(int argc, char* argv[])
{
SDL_Init(SDL_INIT_VIDEO);
SDL_Window* window = SDL_CreateWindow("SDL2 Test",
SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED,
400, 300, SDL_WINDOW_SHOWN);
SDL_Renderer* renderer = SDL_CreateRenderer(window, -1,
SDL_RENDERER_ACCELERATED);
bool quit = false;
while (!quit)
{
SDL_Event event;
while (SDL_PollEvent(&event))
{
if (event.type == SDL_QUIT)
quit = true;
}
SDL_SetRenderDrawColor(renderer, 0, 63, 127, 255);
SDL_RenderClear(renderer);
SDL_RenderPresent(renderer);
SDL_Delay(16);
}
SDL_DestroyRenderer(renderer);
SDL_DestroyWindow(window);
SDL_Quit();
return 0;
}
Compile, run nó hiện ra chương trình thế này là ok
Dài dòng thế này chứ về sau em tạo project SDL2 mới chỉ cần New Project rồi thêm -lmingw32 -lSDL2main -lSDL2
vô linker settings là xong rồi.
CÁCH CÀI SDL:
-
Bạn install xong SDL từ web rồi thì vào trong nó sẽ có 2 cái folder chính để sử dụng là lib và include:
-
Bạn vào Visual studio, bạn chọn project bạn cần sử dụng SDL nhấn Alt-Enter thì ra màn hình Property.
-
Chọn tab C/C++ chon General chọn mục Additional Include Directories bạn add folder include của SDL vào
-
Chọn platform ở ngay dưới title bar của windows là x64 hoặc x86 thì tùy vào hđh của bạn.
-
Chọn tab linker chọn General chọn mục Additional Library Directories bạn add folder lib của SDL vào
-
Vẫn trong tab Linker chọn Input chọn mục Additional Dependencies add 2 cái này vào:
> SDL2.lib
SDL2main.lib
7.Ấn OK và bạn đã xong.
P/s: lỗi load ảnh nên có vấn đề gì cứ hỏi mình
cảm ơn về sự giúp đỡ của bạn, nhưng mình dùng Code:Block ko dùng Visual studio.Mong bạn chỉ giáo
Vote dùng Visual studio khi làm game cho đỡ rắc rối!
thanks.