ImageMagick "display" and "convert" fail with a Visual C++ runtime error

Dmitry Golovaty dgolovaty@gmail.com
Fri Apr 20 05:25:00 GMT 2007


Thanks - the culprit is the MATLAB entry

/cygdrive/c/Program Files/MATLAB/R2007a/bin/win32

in the path; removing it fixes the problem ... is there way to pluck
it out automatically (e.g. in .bashrc) when the path is imported from
Windows at Cygwin start-up? Thanks again and sorry for starting
another thread - I did not subscribe in time to get the original
message.

Dmitry

dgolovaty@gmail.com wrote:

> Microsoft Visual C++ Runtime Library
>
> Runtime Error!
>
> Program C:\cygwin\bin\convert.exe
>
> R6034
> An application has made an attempt to load the C runtime library
> incorrectly.
>
> Is there anything that I can do to fix this?

Something sounds quite broken if MSVCRT.DLL is being loaded at all.
That should not happen.  Try setting your PATH to the minimal required,
in case you have junk libraries in some directory in the PATH:

$ PATH="/usr/bin:/usr/X11R6/bin:$(cygpath -S)" /usr/bin/convert -help

You can also use cygcheck to show the link-time depandencies:

$ cygcheck /usr/bin/convert
C:\cygwin\bin\convert.exe
  C:\cygwin\bin\cygwin1.dll
    C:\WINXP\system32\ADVAPI32.DLL
      C:\WINXP\system32\ntdll.dll
      C:\WINXP\system32\KERNEL32.dll
      C:\WINXP\system32\RPCRT4.dll
  C:\cygwin\bin\cygMagick-10.dll
    C:\cygwin\usr\X11R6\bin\cygX11-6.dll
    C:\cygwin\usr\X11R6\bin\cygXext-6.dll
    C:\cygwin\bin\cygbz2-1.dll
    C:\cygwin\bin\cygfreetype-6.dll
      C:\cygwin\bin\cygz.dll
    C:\cygwin\bin\cyglcms-1.dll
    C:\cygwin\bin\cygtiff-5.dll
      C:\cygwin\bin\cygjpeg-62.dll
    C:\WINXP\system32\GDI32.dll
      C:\WINXP\system32\USER32.dll
  C:\cygwin\bin\cygWand-10.dll

If you see MSVCRT.DLL anywhere in that list, or some DLL that's not from
Cygwin or %windir%\system32, be suspicious.  To really troubleshoot you
can try Dependancy Walker with its profiling feature:

Options Selected:
     Hook the process to gather more detailed dependency information.
     Log LoadLibrary function calls.
     Log thread information.
     Use simple thread numbers instead of actual thread IDs.
----------------------------------------------------------------------

Started "CONVERT.EXE" (process 0x1FE8) at address 0x00400000 by thread
1.
Loaded "NTDLL.DLL" at address 0x7C900000 by thread 1.
Loaded "KERNEL32.DLL" at address 0x7C800000 by thread 1.
Injected "DEPENDS.DLL" at address 0x08370000 by thread 1.
Loaded "CYGWIN1.DLL" at address 0x61000000 by thread 1.
Loaded "ADVAPI32.DLL" at address 0x77DD0000 by thread 1.
Loaded "RPCRT4.DLL" at address 0x77E70000 by thread 1.
Loaded "CYGMAGICK-10.DLL" at address 0x6E460000 by thread 1.
Loaded "CYGX11-6.DLL" at address 0x67010000 by thread 1.
Loaded "CYGXEXT-6.DLL" at address 0x66DA0000 by thread 1.
Loaded "CYGBZ2-1.DLL" at address 0x6CE00000 by thread 1.
Loaded "CYGFREETYPE-6.DLL" at address 0x6C660000 by thread 1.
Loaded "CYGZ.DLL" at address 0x66AD0000 by thread 1.
Loaded "CYGLCMS-1.DLL" at address 0x6EBD0000 by thread 1.
Loaded "CYGTIFF-5.DLL" at address 0x6B1A0000 by thread 1.
Loaded "CYGJPEG-62.DLL" at address 0x6BDD0000 by thread 1.
Loaded "GDI32.DLL" at address 0x77F10000 by thread 1.
Loaded "USER32.DLL" at address 0x7E410000 by thread 1.
Loaded "CYGWAND-10.DLL" at address 0x6E390000 by thread 1.
LoadLibraryW("rpcrt4.dll") called from "RPCRT4.DLL" at address
0x77E9FAF5 by thread 1.
LoadLibraryW("rpcrt4.dll") returned 0x77E70000 by thread 1.
LoadLibraryA("Secur32.dll") called from "ADVAPI32.DLL" at address
0x77DF97AE by thread 1.
Loaded "SECUR32.DLL" at address 0x77FE0000 by thread 1.
LoadLibraryA("Secur32.dll") returned 0x77FE0000 by thread 1.
Thread 2 started in "KERNEL32.DLL" at address 0x7C810659.
LoadLibraryA("user32") called from "CYGWIN1.DLL" at address 0x6100124F
by thread 1.
LoadLibraryA("user32") returned 0x7E410000 by thread 1.
LoadLibraryA("psapi") called from "CYGWIN1.DLL" at address 0x6100124F by
thread 1.
Loaded "PSAPI.DLL" at address 0x76BF0000 by thread 1.
LoadLibraryA("psapi") returned 0x76BF0000 by thread 1.
Thread 2 exited with code 0 (0x0).
Exited "CONVERT.EXE" (process 0x1FE8) with code 0 (0x0) by thread 1.
Entrypoint reached. All implicit modules have been loaded.

Still no mention of MSVCRT.DLL anywhere, so I don't see how this is
happening in your case.

Brian

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list