sfml

2012-12-27 9 views
1
나는 sfml을 다음있어

을 설정하는 것은 버전 2 및 codeblocks에 대한 가이드를 시작하고 튜토리얼이 나에게 모든 것을 할 않았다sfml

  • 다운로드하고

  • 경로를 추가 한 SDK의 압축을 푼 sfml 헤더 및 라이브러리에

  • 는 라이브러리 그래픽, 창 및 시스템

를 연결

샘플 코드가 작동하지 않습니다. sfml-graphics-d-2.dll이 없다는 오류 메시지가 나타납니다. 컴파일이 작동하지만 창이 열리지 만 검정색으로 남아 있으며이 오류가 나타납니다. 가 여기에 C++ 및 codeblocks 새로운 임 이후 튜토리얼 http://www.sfml-dev.org/tutorials/2.0/start-cb.php

에 대한 링크, 난 상세한 답변 감사합니다.

업데이트 : 실행 파일에 SFML dll을 복사했습니다. 이제 내 프로그램이 충돌합니다. 나는 이유를 모른다. 튜토리얼에서 사용 된 것과 정확히 똑같은 코드입니다.

업데이트 : 링크 된 라이브러리를 -s 버전으로 변경하고 #define SFML_STATIC을 추가했습니다. 프로그램이 여전히 빌드되어 충돌합니다.

+0

실행 파일이있는 곳에 DLL을 넣었습니까? – Rapptz

답변

2

GCC 4.7.1이 포함 된 최신 Code :: Blocks 버전을 사용하는 경우 제공되는 GCC 버전이 < 4.7 인 경우 SFML을 직접 컴파일해야합니다 (또는 Nightly Builds을 사용하십시오). 엑스.

+1

작품, 위대한 답변에 감사드립니다. – lhk

2

정적 라이브러리를 프로젝트 내에 빌드하도록 설정하지 않고 SFML과의 동적 연결을 사용하는 것으로 보입니다. 두 달 전에 SFML을 설정했을 때 비슷한 문제가있었습니다.이 인용문을 상기 해보십시오.

여기에 표시된 설정은 DLL 파일을 필요로하는 SFML의 동적 버전에 응용 프로그램이 연결되도록합니다. 이러한 DLL을 없애고 실행 파일에 SFML을 직접 통합하려면 정적 버전에 연결해야합니다. 정적 SFML 라이브러리에는 디버그의 경우 "sfml-xxx-s-d", 릴리스의 경우 "sfml-xxx-s"가 붙습니다. 이 경우 프로젝트의 전 처리기 옵션에서 SFML_STATIC 매크로를 정의해야합니다.

sfml-graphics-s-d //for debug 
sfml-window-s-d //d for debug! 
sfml-system-s-d 
릴리스에 대한

에서, D (sfml 그래픽-S)

다음 컴파일러 설정로 이동을 생략 프로젝트에서 정적 파일을 포함해야합니다 - ># 정의 및 유형

SFML_STATIC 
+0

릴리스를 위해's-d '를's'로 변경해야합니다. – Mario

+0

웃기는 소리, 그 캐치에 감사드립니다. –

+0

이 작동하지 않는 경우 – lhk