2014/1/16 Jim Michaels <[email protected]>
> ntstatus.h:#define STATUS_INVALID_IMAGE_FORMAT
> ((NTSTATUS)0xC000007B)
>
> when I run my 64-bit exe, I get this windows error dialog box with the
> above error number saying the application cannot start in windows 64-bit.
> in 32-bit, it refuses to link due to 2 library coding error2 in the
> compiler (the 2nd error I don't know what it means):
>
> d:/i686-4.8.2-release-win32-sjlj-rt_v3-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.8.2/../../../../i686-w64-mingw32/lib/../lib/libmingw32.a(lib32_libmingw32_a-merr.o):merr.c:(.text+0x60):
> multiple definition of `_matherr'
> d:/i686-4.8.2-release-win32-sjlj-rt_v3-rev0/mingw32/bin/../lib/gcc/i686-w64-mingw32/4.8.2/../../../../i686-w64-mingw32/lib/../lib/libcrtdll.a(dqkfs00177.o):(.text+0x0):
> first defined here
> df.o:df.cpp:(.text+0x2a01): undefined reference to `_imp__SHValidateUNC@12
> '
> collect2.exe: error: ld returned 1 exit status
>
_SHValidateUNC is defined in libshell32:
http://msdn.microsoft.com/en-us/library/windows/desktop/bb762259%28v=vs.85%29.aspx
The other error might be a bug in MinGW-w64, or it might be a bug in your
compilation options. Do you have a SSCCE <http://sscce.org/>?
>
> the compilers I am using, personal build of experimental posix 4.9.0:
> i686-4.8.2-release-posix-sjlj-rt_v3-rev0
> x86_64-4.8.2-release-posix-sjlj-rt_v3-rev0
>
This looks like GCC 4.8.2, not 4.9.
>
> the crtdll.dll gave me an error on start saying it was missing because
> it's ONLY in %SystemRoot%\SysWOW64 on 64-bit (maybe win7 and up?) and this
> is not in the default PATH you get with a windows install.
> so a lot of people think they have a virus (there are pages to this
> effect) or they need to do a system restore due to an about.com web page
> that makes assumptions...
>
In general, Windows has very complicated system DLL search stuff. This
includes winsxs, which is so complicated you should never muck with any of
it yourself, and let Windows handle it.
Anyways, on Windows 7 x64 Pro SP1, I've got a 32-bit crtdll.dll in some
winsxs directory, and one in SysWOW64. This last directory is definitely
searched for system DLLs in 32-bit applications (just check with Dependency
Walker). I don't know where you get the information this is not the case.
Ruben
------------------------------------------------------------------------------
CenturyLink Cloud: The Leader in Enterprise Cloud Services.
Learn Why More Businesses Are Choosing CenturyLink Cloud For
Critical Workloads, Development Environments & Everything In Between.
Get a Quote or Start a Free Trial Today.
http://pubads.g.doubleclick.net/gampad/clk?id=119420431&iu=/4140/ostg.clktrk
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public