2016-12-29 15 views
0

필자는 3 시간 동안 MSVS 2015에 알레그로 5를 설치하려고 시도해 왔으며 많은 튜토리얼을 보았습니다. 아무런 도움이되지 못했습니다. 튜토리얼 위키에서 코드를 사용하여 화면을 만듭니다.Allegro 설치

#include "windows.h" 
#include <stdio.h> 
#include <allegro5/allegro.h> 

int main(int argc, char **argv) 
{ 
    ALLEGRO_DISPLAY *display = NULL; 

    if (!al_init()) { 
     fprintf(stderr, "failed to initialize allegro!\n"); 
     return -1; 
    } 

    display = al_create_display(640, 480); 
    if (!display) { 
     fprintf(stderr, "failed to create display!\n"); 
     return -1; 
    } 

    al_clear_to_color(al_map_rgb(0, 0, 0)); 

    al_flip_display(); 

    al_rest(10.0); 

    al_destroy_display(display); 

    return 0; 
} 

이것은 내가 얻은 오류입니다.

1>------ Build started: Project: Project7, Configuration: Debug Win32 ------ 
1> Source.cpp 
1>Source.obj : error LNK2019: unresolved external symbol _al_rest referenced in function _main 
1>Source.obj : error LNK2019: unresolved external symbol _al_map_rgb referenced in function _main 
1>Source.obj : error LNK2019: unresolved external symbol _al_create_display referenced in function _main 
1>Source.obj : error LNK2019: unresolved external symbol _al_destroy_display referenced in function _main 
1>Source.obj : error LNK2019: unresolved external symbol _al_flip_display referenced in function _main 
1>Source.obj : error LNK2019: unresolved external symbol _al_clear_to_color referenced in function _main 
1>Source.obj : error LNK2019: unresolved external symbol _al_install_system referenced in function _main 
1>c:\users\jacob\documents\visual studio 2015\Projects\Project7\Debug\Project7.exe : fatal error LNK1120: 7 unresolved externals 
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== 

감사합니다.

+0

NuGet 패키지를 다운로드하면 모든 것이 자동으로 구성됩니다. 유일한 작업은 프로젝트 구성을 열어 원하는 알레그로를 선택하는 것입니다. – rlam12

답변

1

해결되지 않은 외부 기호는 컴파일 타임 링커 오류를 의미합니다. 이러한 기능은 라이브러리 내에 존재하는 것을 정의 헤더 파일 있습니다, 실제로하지 않습니다 :

  • 포함 (.H/.HPP) : 당신은 알레그로를 다운로드 할 때, 자원의 컬렉션 올 것이다 기능 코드 자체를 포함하십시오.

  • 라이브러리 (.lib) : 이러한 파일에는 미리 컴파일 된 코드가 포함되어 있으므로 프로젝트에 링크해야합니다.

  • DLL을 (.DLL) : 다른 도서관 자원이있을 때 DLL을 항상 사용되지 않습니다 그러나 그들은 런타임 연결을 지원하고 제대로 실행하기 위해 응용 프로그램과 함께 배포 할 필요가있다.

링커 오류

당신이 가장 가능성이 라이브러리에 대한 링크를 누락되었습니다. Visual Studio에서 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭하고 링커 섹션으로 이동하여 라이브러리에 대한 참조를 추가 할 수 있습니다. 알레그로 다운로드의 "lib"폴더 경로를 추가해야합니다. 이것은 파일 경로를 추가 라이브러리 종속성 필드에 추가하여 수행 할 수 있습니다.

희망이 도움이됩니다.

+0

아니요, 라이브러리와 포함 파일을 모두 가지고 있습니다. – user7352230

+0

내가 놓친 경우를 대비해 한 가지 잊어 버린 점은 다음과 같습니다. 링크하려는 라이브러리 파일의 이름을 링커/입력/추가 종속성으로 지정해야합니다. 예 : "somelib.lib; someotherlib.lib" – MishMash95

+0

모든 allegro lib 파일에 대해이 작업을 수행해야합니까? – user7352230