From: Earnie B. <ea...@us...> - 2012-09-09 16:23:22
|
On Sun, Sep 9, 2012 at 8:57 AM, Keith Marshall wrote: > On 09/09/12 10:12, Maximus wrote: >> Keith Marshall <keithmarshall@...> writes: >>> Understood. So, you split it into the two packages, as below. Users on >>> x86 install only the mingw32 package. Users on x86_64 request the >>> installation of only the mingw64 package, which you have declared as >>> requiring the mingw32 package, (within the mingw-get XML package >>> specification), and mingw-get installs both packages. >> >> I'm not familiar with mingw structure, and have one doubdt about this split. >> For example, user had installed x86 version of mingw. >> There is no restrictions for running it on 64-bit OS, isn't it? > > Perhaps I'm being unnecessarily paranoid, but I'm mindful of a likely > plethora of bug reports, from x86 users, along the lines of: "Hey, why > have you idiots installed these useless 64-bit binaries on my 32-bit host?" > I'm agreeing with Keith that they should be separated. When running in 32bit the environment variable PROCESSOR_ARCHITECTURE will contain a value of x86 regardless of the OS. >> I mean, x86 version of ConEmu starts x86 version of bash (OK), >> but user runs them on 64-bit OS and type in prompt "telnet", >> but this tool is available only in 64-bit version. And ConEmu >> will fails, if x86_64 version of ConEmu is not installed too. >> >> (example may be far-fetched, illustration only). >> >> ConEmu check existence of required libraries on startup, >> and if ConEmuHk64.dll is not found in 64-bit OS - warning >> will be shown, but allowing to continue. >> >> Recommended files not found! >> ConEmuHk64.dll > > So, the 64-bit user who installs only the 32-bit package, will get a > warning of a potential problem, and can take action (install the 64-bit > package) to avoid it. If user is executing 32bit in 64bit windows, the 32bit application would be executed from SysWOW64 instead of System32 (yes, it is stupid but true). The 64bit applications live in System32 and the 32bit applications live in SysWOW64. Where did the telnet application come from? It doesn't exist on my Windows 7 system. In the end, it is the users choice to make stupid decisions. You cannot protect the fool from themselves. You can only help lead them by the hand. > >> If you think, this case is not a problem - packages may be splitted easily. > > I don't think it's a problem, but if your concern remains, perhaps you > could install an integrated package, and devise a post-install hook to > to remove the 64-bit components from 32-bit hosts? I still think a segregated package makes the most since. At the moment, MSYS is 32bit only. Eventually that will change. Users who have 64bit systems will choose it over 32bit anyway. The mingw-get installer can determine its default mingw32 or mingw64 versions based on PROCESSOR_ARCHITECTURE having a value x86 or AMD64. If mingw64 doesn't exist check for a mingw32 version before aborting. -- Earnie -- https://sites.google.com/site/earnieboyd |