2017-03-19 6 views
1

this 자습서에 따라 Clion으로 SFML을 테스트하려고합니다. 마지막 부분은 SFML 예제입니다. 그것은이 SFML을보고, 오류없이 컴파일하지만 실제 프로그램을 실행할 때 내가 가진 전부입니다SFML 그래픽을 실행 한 후 새 창이 표시되지 않습니다.

C:\Users\yurys\CLionProjects\SFMLDemo\cmake-build-debug\SFMLDemo.exe 

Process finished with exit code -1073741515 (0xC0000135) 

나는 new window 볼 가정 해있어 튜토리얼에 따르면.

gcc가 5.3.0 인 MinGW32를 사용하므로 설치된 SFML 버전과 일치합니다. 다음과 같이 나는 비주얼 스튜디오 2017

내 CMake 파일을 사용하여 설치 한 다른 버전입니다 있습니다

cmake_minimum_required(VERSION 3.6) 
project(SFMLDemo) 

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") 

set(SOURCE_FILES main.cpp) 
add_executable(SFMLDemo ${SOURCE_FILES}) 

set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake_modules") 
find_package(SFML REQUIRED system window graphics network audio) 
link_directories("C:/Clion_SFML/") #Path to the SFML Libraries 
if (SFML_FOUND) 
    include_directories(${SFML_INCLUDE_DIR}) 
    target_link_libraries(SFMLDemo ${SFML_LIBRARIES}) 
endif() 

코드 :

#include <SFML/Graphics.hpp> 


int main() { 

    sf::RenderWindow window(sf::VideoMode(640,480,32),"Hello SFML"); 

    sf::Font font; 
    font.loadFromFile("OpenSans-Bold.ttf"); 

    sf::Text text("Hello World",font,11); 
    text.setCharacterSize(32); 
    text.setPosition(window.getSize().x/2 - text.getGlobalBounds().width/2, 
        window.getSize().y/2 - text.getGlobalBounds().height/2); 


    while(window.isOpen()){ 

     sf::Event event; 
     while(window.pollEvent(event)) { 
      if(event.type == sf::Event::Closed){ 
       window.close(); 
      } 

      window.clear(sf::Color::Black); 
      window.draw(text); 
      window.display(); 
     } 
    } 
    return 0; 
} 
+0

실행 파일의 디렉토리에 SFML .dll이 있습니까? – Bumrang

+0

@Bumrang 아니요, 모든 SFML 라이브러리가 C : \ 드라이브에 있습니다. –

+0

@Bumrang 고마워요. –

답변

0

댓글에 응답하지만 난 제출합니다 답변으로 표시되어 다른 사람들에게 더 눈에니다.

이 경우 SFML은 동적으로 링크됩니다. 동맹국. SFML에 필요한 적절한 .DLL 파일이 실행 파일과 동일한 디렉터리에 있는지 확인하십시오.