Damnit.
-
It seems that when I compile an i686 application with mingw-w64, the compiled application references the 64-bit libraries for some reason. I am not sure if I am doing something wrong, there is a bug in Mingw-w64, or Windows is just a complete idiot. I will be working on this one for a while.
Gryphons Are Awesome! Gryphons Are Awesome!
-
It seems that when I compile an i686 application with mingw-w64, the compiled application references the 64-bit libraries for some reason. I am not sure if I am doing something wrong, there is a bug in Mingw-w64, or Windows is just a complete idiot. I will be working on this one for a while.
Gryphons Are Awesome! Gryphons Are Awesome!
Brisingr Aerowing wrote:
mingw-w64
Why inthe owrld you're compiling with mingw-w64... use VC instead or if you must, use Mingw :laugh:
-
Brisingr Aerowing wrote:
mingw-w64
Why inthe owrld you're compiling with mingw-w64... use VC instead or if you must, use Mingw :laugh:
Why not? It works for the most part. From what I have determined, this may be a bug in the 4.8.1 GCC release, as 4.8.0 seems to work correctly.
Gryphons Are Awesome! Gryphons Are Awesome!
-
Why not? It works for the most part. From what I have determined, this may be a bug in the 4.8.1 GCC release, as 4.8.0 seems to work correctly.
Gryphons Are Awesome! Gryphons Are Awesome!
Brisingr Aerowing wrote:
may be a bug
Hope so it might be? :laugh:
-
It seems that when I compile an i686 application with mingw-w64, the compiled application references the 64-bit libraries for some reason. I am not sure if I am doing something wrong, there is a bug in Mingw-w64, or Windows is just a complete idiot. I will be working on this one for a while.
Gryphons Are Awesome! Gryphons Are Awesome!
Be sure to tell both the compiler and the linker that you are making a 32 bit app (-m32). Also, 64 bit gdb does not work with 32 bit programs as it will load systems libraries from the 64-bit directory instead of system32 (cause Windows redirects 64-bit programs away from 32-bit binaries should be). The error message suggest that there is a way, but I never worked out the details of it. EDIT: Also, if you have made sure both of the above are not the issue, then it is likely you have a 64-bit version of a dll your program links against in the search path. This is solved by using static linking or dropping the 32-bit version in the same directory as the application. Specifically, I would imagine that the mingw-64 compiler is on your PATH, and it will have the 64-bit versions of many of the dlls it links your programs against in the same folder as the compiler since it uses them.
-
Be sure to tell both the compiler and the linker that you are making a 32 bit app (-m32). Also, 64 bit gdb does not work with 32 bit programs as it will load systems libraries from the 64-bit directory instead of system32 (cause Windows redirects 64-bit programs away from 32-bit binaries should be). The error message suggest that there is a way, but I never worked out the details of it. EDIT: Also, if you have made sure both of the above are not the issue, then it is likely you have a 64-bit version of a dll your program links against in the search path. This is solved by using static linking or dropping the 32-bit version in the same directory as the application. Specifically, I would imagine that the mingw-64 compiler is on your PATH, and it will have the 64-bit versions of many of the dlls it links your programs against in the same folder as the compiler since it uses them.
Nope, only the 32 bit is. And I did not know about the -m32 switch. :doh: Oh, well. Thanks!
Me.Fail(Fail.Epic)
(NOTE: I only used VB for the
Me
keyword!)Gryphons Are Awesome! Gryphons Are Awesome!