I've compiled glew 2.1.0 using msys no errors given, but the dll was wrong in some way, I donwloaded precompiled glew 2.0.0 files for mingw, I'm using mingw-w64 and I wanted to have 64 bits dll (if that's even possible), yet even with correct dll if I put that dll into sysWOW64 I can not be found, only if I put it straight into executable directory or system32 it starts to work. Does that mean application is limited to 32 bits ?
Asked
Active
Viewed 80 times
1
-
1system32 is actually for 64bits apps. WOW64 is for 32bits. – Matthieu Brucher Dec 11 '18 at 19:59
-
That meaning I screwed by putting glfw.dll meant for x64 into wow64 ? :/ – Koniotaur Dec 11 '18 at 20:02
-
yes, should be in system32 (if you ask why, don't :p) – Matthieu Brucher Dec 11 '18 at 20:18
-
1I guess it's windows logic. 32 = 64, 64=32. Thank you for clarifying thought :) – Koniotaur Dec 11 '18 at 20:18
-
But the proper practice is to keep the library with the executable. Otherwise you need to make sure that your re not deleting a more recent version and all that stuff. – Matthieu Brucher Dec 11 '18 at 20:23
-
Sure thing also everyone using that executable will need it right? – Koniotaur Dec 11 '18 at 20:24
-
Yes, all should be packaged and shipped together. Another reason to use the executable path is that you would need admin rights to put something there. – Matthieu Brucher Dec 11 '18 at 20:34
-
@Koniotaur its for compatibility reasons as drivers and DLLs and stuff are put to system32 and many programs relay on such path ... the WOW64 is an "emulator" path (IIRC Windows on Win64) for 32 bit apps ... sadly support for 16 bit is dropped (I had to rewrite some utils I used from w95 days)... So it was more easy to leave System32 for native files and use different path for emulated stuff ... otherwise almost all the SW would need a rewrite ... – Spektre Dec 11 '18 at 20:41
-
Possible duplicate of [Accessing anything GLEW related immediately crashes program in MinGW](https://stackoverflow.com/questions/26903593/accessing-anything-glew-related-immediately-crashes-program-in-mingw) – BDL Dec 11 '18 at 21:49
-
Just to ease a little bit of the confusion @Spektre may have caused: A lot of software for Window has certain paths and names hardcoded, instead of pulling it from the system configuration. And to save a huge amount of error prone search&replace in program source code, the paths were left as is, so that programs could be simply recompiled. When a program is executed in 32bit mode, Windows overlays the sysWOW64 directoy over the regular system32 *on the file system level*, i.e. there's no simple string substitution happening. – datenwolf Dec 11 '18 at 22:57