2012-01-27 1 views
0

32 비트 창에는 MinGW를 사용합니다. Windows 공용 컨트롤을 사용하므로 Windows API에서 InitCommonControlsEx()를 호출해야합니다. MinGW 링커는 명시 적으로 Commctrl.lib (또는 minGW .a 버전 libcomctl32.a)와 연결하더라도이 함수를 찾을 수 없습니다.MinGW 라이브러리의 Windows API 함수 InitCommonControlsEx()는 어디에 있습니까?

InitCommonControlsEx()에 대한 올바른 가져 오기 라이브러리는 어디에서 찾을 수 있습니까?

-lcomctl32 

이에서만 작동합니다 : 당신이 libcomctl32.a 연결하려면

+0

당신은 commctrl.lib보다는 Comctl32.lib에 연결하는 것을 의미합니까? –

+0

MinGW 시스템의 이름 지정 규칙이 다르지만 올바른 이름이 무엇인지 찾으려고합니다. –

+1

올바른 이름은 libcomctl32.a입니다. 'objdump -t libcomctl32.a'를 실행하면 알 수 있습니다. 이것이 링커 오류라고 확신합니까? MinGW의 어떤 버전이 있습니까? 컴파일하고 링크하는 데 사용하는 명령 줄은 무엇입니까? – tinman

답변

1

, 당신은

예 -l하는 'LIB'& '로 .a'를 생략하고 다음을 변환해야 gnu gcc이며 파생 상품입니다 (Cygwin, Mingw, Clang 등). MSVC & C-Builder에서는 라이브러리 이름이 변환되지 않으므로 Comctl32.lib를 링커에 직접 전달할 수 있습니다.

관련 문제