2013-08-21 1 views
3

찾을 수 없습니다 나는 다음과 같은 오류 얻을 :프로 시저 시작 지점 __printf__는 동적 링크 라이브러리 libintl은-8.dll

The procedure entry point __printf__ could not be located in the dynamic link library libintl-8.dll. 

윈도우 7/64 비트. libintl-8.dll의 파일 버전은 0.18.1입니다.

올바른 파일을 사용하는 컴파일러입니까?

편집 : 여기가 C에서 파일의 수출 테이블입니다 : 어떻게해야

[Ordinal/Name Pointer] Table 
     [ 0] __printf__ 
     [ 1] _get_output_format 
     [ 2] _nl_expand_alias 
     [ 3] _nl_explode_name 
     [ 4] _nl_find_domain 
     [ 5] _nl_find_msg 
     [ 6] _nl_language_preferences_default 
     [ 7] _nl_load_domain 
     ... ... 

답변

0

여기는 MinGW \ 빈 \의 libintl은-8.dll \. libintl은-8.dll 0.8.1

Export Table: 
    Name:       libintl-8.dll 
    Time Date Stamp:    0x4EA19844 (21.10.2011 17:05:24) 
    Version:      0.00 
    Ordinal Base:     1 
    Number of Functions:   84 
    Number of Names:    84 

    Ordinal Entry Point Name 
     1 0x00009124 __printf__ 
     2 0x000105B8 _get_output_format 
     . ... 
+0

감사합니다. 그러나 그것이 어떻게 있어야 하는지를 아는 것은 다운로드/설치 패키지에 포함 된 DLL이 컴파일러가 원하는 것이 아니거나 내가 그것에 대해해야 할 일이 아니라는 것을 말해주지 않습니다. –

+0

이것은 소리가 날 수 있지만, obj 덤프 서수는 0을 기준으로하며 귀하의 것이 아닙니다. 실제 불일치가있을 수 있습니까, 아니면 도구가 목록을 표시하는 방법의 문제입니까? –

+0

@ JoeDavis : 시도해 보면 [libintl-8.dll] (http://moskito-x.de/stack/libintl-8.dll) –

4

나는 비슷한 문제가 발생했습니다. 제 경우에는 컴파일러의 콘솔 출력보다는 오류가 대화 상자에 나타납니다. 이것은 실제로 컴파일이 아니라 컴파일러의 실행에 문제가 있음을 나타냅니다. gcc 명령에 -v을 추가하여 실행중인 하위 명령을 확인하십시오. 제 경우에는 MinGW/bin 대신 을 MinGW/mingw32/bin에서 실행하려고 시도하는 데 문제가있었습니다 (libintl DLL은 이전 위치에 존재하지 않음). MinGW/mingw32 폴더의 이름을 변경하여 폴더가 발견되지 않고 컴파일이 성공하지 못하도록했습니다. 그것이이 위치에서 왜보고 있는지에 관해 명확히하지 않는다.

궁극적으로 저는 MinGW를 새로 설치하여이 문제를 해결했습니다.

6

나는 똑같이한다. c:\mingw\mwingw32c:\mingw\mingw32old으로 바꾸면 (Windows XP)으로 작동합니다. Windows 7 64 비트에서는이 문제가 발생하지 않았습니다.

+0

이것이 왜 필요한지 또는 좀 더 우아한 수정이 가능한지 알고 있으면 좋을 것입니다. –

6

제 시스템에서 PATH envvar을 재정렬하여 c:\MinGW\bin%GTK_BASEPATH%\bin 앞에 표시되도록했습니다. 이렇게하면 c:\MinGW\bin 대신 c:\MinGW\bin\mingw32\bin에서 GCC가 실행될 때에도 as.exe이 원했던 올바른 libintl-8.dll이 발견됩니다. 그렇지 않으면, 그것은 필요한 모든 기호를 가지고 있지 않은 일부 GTK + SDK와 함께 링크 된 것을 링크하려고 시도 할 것입니다. 또한 내 경우에는 동적 링커가 사용하기로 결정한 libintl-8.dll이 실제로 잘못되었을 때 as.exe에 기호가 누락되었다는 대화 상자가 표시됩니다.

실제로 공유 객체 대신 DLL을 자체 호환되지 않는 변종과 함께 자신의 설치 프로그램을 출시 각각의 SDK를 공유 mingw-get를 통해 설치 이상의 패키지가없는 너무 나쁜 ... 응답에 대한

+0

당신은 천재입니다,이 시간을 2 시간 잃어 버렸습니다! – teMkaa

관련 문제