0
Allegro 5.0.8에서 게임을 개발 중이며, 컴파일을 시도하고 Linux (Mint 14)에서 실행하기 전까지 모든 것이 잘 진행되고 있습니다. .so 그래서 나는 sime 테스트를했다. C++ Allegro 5.0.8 - Linux에서 NULL을 반환하는 al_load_bitmap()
#include <allegro5/allegro.h>
#include <allegro5/allegro_image.h>
#include <iostream>
int main(void)
{
al_init();
ALLEGRO_DISPLAY *screen = al_create_display(800, 600);
al_init_image_addon();
ALLEGRO_PATH *path = al_get_standard_path(ALLEGRO_RESOURCES_PATH);
al_set_path_filename(path, "players.png");
ALLEGRO_BITMAP *img = al_load_bitmap(al_path_cstr(path, '/'));
if (img == NULL)
std::cout << al_path_cstr(path, '/') << std::endl;
al_draw_bitmap(img, 0, 0, 0);
al_flip_display();
while (true){}
return 0;
}
이 예
는 잘 컴파일하지만 라인ALLEGRO_BITMAP *img = al_load_bitmap(al_path_cstr(path, '/'));
반환 NULL. 한편, 라인
std::cout << al_path_cstr(path, '/') << std::endl;
은 이미지의 정확한 절대 경로를 인쇄합니다.
내가 뭘 잘못하고 있니?
PNG 파일은 외부 라이브러리를 통해 지원됩니다. 'libpng'가 설치되어 있습니까? –
나는 libpng12-0을 가지고 있지만 .. libpng12-dev ...이 아니어도 설치해야합니까 ?? – Sylar
네, 아마 그걸 필요로하고'libpng' (즉'-lpng')와 링크 할 수도 있습니다. –