diff --git a/flaim/INSTALL.W32 b/flaim/INSTALL.W32 index c55e69b..de10dfb 100644 --- a/flaim/INSTALL.W32 +++ b/flaim/INSTALL.W32 @@ -1,87 +1,87 @@ -Building on Windows -=================== - Visual C++ 8.0 Express is good, but more to the point, it's free. -To build FLAIM, you will need to download and install VC8 Express and the -latest Windows Platform SDK, as VC8 Express only comes with .NET libraries. -You can get VC8 Express here: - - http://msdn.microsoft.com/vstudio/express/visualC/default.aspx - -Click the Download link on the right, and CAREFULLY follow steps 1 through -4 on that page. The 4th step links to a page that indicates how to install -the Windows Platform SDK. It looks painful, but it's really rather simple. - -Once VC8 Express and the Platform SDK have been installed and configured -to work correctly with each other (and after the obligatory set of reboots), -you can simply double click on the flaim solution (flaim.sln) file to bring -up the flaim project in the VC8 IDE. Use the main or context menu options -to build the desired targets. - -At some near future point, we hope to be able to build with autotools under -Cygwin. Of course, VC8 Express (or Professional) will still be required, but -at least the build process will be the same for all platforms. - -FLAIM Runtime Library Use -========================= - FLAIM libraries - both static and dynamic - and the flaim utilities -consume the dynamic (DLL) form of the VC8 runtime libraries. This is in -alignment with the use of runtime libraries on Unix platforms. It's more -efficient and flexible to use the DLL versions of these libraries, and -it allows Microsoft to update these libraries as necessary to fix security -holes and defects which may be found in the future. - - With each new version of Windows and Microsoft tools, Microsoft -platforms become more security minded - and more secure. This is -generally done by copying features from Unix platforms into the Windows -operating system and into the tools themselves. Visual Studio 2005 is no -exception. The most significant security feature in VC8 (IMHO) is secure -package deployment and executable module manifests. This is nothing less -than the direct equivalent of RPATH's in Unix and Linux, and the usual -security features - and annoying issues - come along with it. - - The VC8 runtime libraries include MSVCR80.DLL, MSVCP80.DLL and -MSVCM80.DLL, which represent the C standard library, the C++ standard -library, and the C math library, respectively. These libraries may no -longer be simply dropped into the same directory as your executable and -consumed. Executables and consumer DLL's need to be configured to build -with a manifest file (a default setting for new projects), and the runtime -libraries need to be "deployed". Deployment consists of running a -significant algorithm to determine platform requirements and features, -and making the right decisions to install these runtime libraries. - - Developers (like you) will not have a problem executing your own -projects built against the FLAIM libraries because you've installed VC8, -which consumes the VC8 runtime libraries, and so deploys it during its -install process. For more information, see this excellent article on -the CodeProjects website: - - http://www.codeproject.com/cpp/vcredists_x86.asp - - -Legacy Makefile -=============== - There is also a legacy makefile that has been hand written to target -flaim for all of the platforms that flaim currently supports. If you don't -want to use autotools, and you don't feel comfortable in the VC8 IDE, then -you may build for windows by simply running make from the root of the FLAIM -project. This makefile accepts multiple auxilliary targets, which modify -the build in various ways. These auxilliary targets include: - - debug - release - 32bit - 64bit - verbose - usegcc - flm_dbg_log - -True build targets include: - - libs (default) - flaim libraries (static and dynamic) - checkdb - checkdb.exe - rebuild - rebuild.exe - view - view.exe - ut_basictest - basic unit tests - sample - sample.exe - -Enjoy! +Building on Windows +=================== + Visual C++ 8.0 Express is good, but more to the point, it's free. +To build FLAIM, you will need to download and install VC8 Express and the +latest Windows Platform SDK, as VC8 Express only comes with .NET libraries. +You can get VC8 Express here: + + http://msdn.microsoft.com/vstudio/express/visualC/default.aspx + +Click the Download link on the right, and CAREFULLY follow steps 1 through +4 on that page. The 4th step links to a page that indicates how to install +the Windows Platform SDK. It looks painful, but it's really rather simple. + +Once VC8 Express and the Platform SDK have been installed and configured +to work correctly with each other (and after the obligatory set of reboots), +you can simply double click on the flaim solution (flaim.sln) file to bring +up the flaim project in the VC8 IDE. Use the main or context menu options +to build the desired targets. + +At some near future point, we hope to be able to build with autotools under +Cygwin. Of course, VC8 Express (or Professional) will still be required, but +at least the build process will be the same for all platforms. + +FLAIM Runtime Library Use +========================= + FLAIM libraries - both static and dynamic - and the flaim utilities +consume the dynamic (DLL) form of the VC8 runtime libraries. This is in +alignment with the use of runtime libraries on Unix platforms. It's more +efficient and flexible to use the DLL versions of these libraries, and +it allows Microsoft to update these libraries as necessary to fix security +holes and defects which may be found in the future. + + With each new version of Windows and Microsoft tools, Microsoft +platforms become more security minded - and more secure. This is +generally done by copying features from Unix platforms into the Windows +operating system and into the tools themselves. Visual Studio 2005 is no +exception. The most significant security feature in VC8 (IMHO) is secure +package deployment and executable module manifests. This is nothing less +than the direct equivalent of RPATH's in Unix and Linux, and the usual +security features - and annoying issues - come along with it. + + The VC8 runtime libraries include MSVCR80.DLL, MSVCP80.DLL and +MSVCM80.DLL, which represent the C standard library, the C++ standard +library, and the C math library, respectively. These libraries may no +longer be simply dropped into the same directory as your executable and +consumed. Executables and consumer DLL's need to be configured to build +with a manifest file (a default setting for new projects), and the runtime +libraries need to be "deployed". Deployment consists of running a +significant algorithm to determine platform requirements and features, +and making the right decisions to install these runtime libraries. + + Developers (like you) will not have a problem executing your own +projects built against the FLAIM libraries because you've installed VC8, +which consumes the VC8 runtime libraries, and so deploys it during its +install process. For more information, see this excellent article on +the CodeProjects website: + + http://www.codeproject.com/cpp/vcredists_x86.asp + + +Legacy Makefile +=============== + There is also a legacy makefile that has been hand written to target +flaim for all of the platforms that flaim currently supports. If you don't +want to use autotools, and you don't feel comfortable in the VC8 IDE, then +you may build for windows by simply running make from the root of the FLAIM +project. This makefile accepts multiple auxilliary targets, which modify +the build in various ways. These auxilliary targets include: + + debug + release + 32bit + 64bit + verbose + usegcc + flm_dbg_log + +True build targets include: + + libs (default) - flaim libraries (static and dynamic) + checkdb - checkdb.exe + rebuild - rebuild.exe + view - view.exe + ut_basictest - basic unit tests + sample - sample.exe + +Enjoy!