>백엔드 개발 >C++ >내 SDL2 코드를 컴파일하거나 링크할 수 없는 이유는 무엇입니까?

내 SDL2 코드를 컴파일하거나 링크할 수 없는 이유는 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-12-22 03:46:13893검색

Why Can't I Compile or Link My SDL2 Code?

SDL2 코드를 컴파일하거나 실행할 수 없습니다

일반적인 오류:

  • "SDL.h: 해당 없음 파일 또는 디렉터리"(컴파일)
  • SDL_main 관련 오류(컴파일 또는 링크)
  • 함수에 대한 정의되지 않은 참조

SDL.h 찾을 수 없음:

-Ipath 컴파일러 플래그 추가, 여기서 경로는 SDL.h가 포함된 디렉터리입니다.

SDL_main 문제:

메인 함수에 int main(int, char **) 서명이 있는지 확인하세요.
#define SDL_MAIN_HANDLED 및 #undef main을 제거하세요.

정의되지 않음 다음에 대한 언급 함수:

  • SDL 함수: 링커 플래그 추가: -lmingw32 -lSDL2main -lSDL2 -Lpath, 경로가 libSDL2.dll.a 및 libSDL2main이 포함된 디렉터리를 가리키는지 확인 .a.
  • WinMain 전용: 링커 플래그를 확인하고 올바른 libSDL2main.a 파일이 사용되는지 확인하세요(컴파일러와 일치하는 32비트 또는 64비트).
  • 기타 기능: libSDL2.a 확인 libSDL2.dll.a 대신 사용되지 않습니다. linking.

DLL 문제:

MinGW의 DLL 문제 디버깅은 링크된 문서를 참조하세요.

대체 해결 방법:

미리 구축된 라이브러리에 MSYS2 사용을 고려하세요. pkg-config를 사용하여 자동 플래그 결정.

추가 문제:

콘솔 창 숨기기: -mwindows 링커 플래그를 추가합니다.
누락된 아이콘: 사용자 정의 .ico 파일을 생성하고 windres를 사용하여 변환한 후 다음을 사용하여 연결합니다. -o.

위 내용은 내 SDL2 코드를 컴파일하거나 링크할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.