I use the following when developing with VS2010/VS2012 Professional. For VS2012, in Configuration Properties, General: Platform Toolset: Visual Studio 2012 - Windows XP (v110_xp)
The folling apply to both VS2010 and VS2012: In Configuration Properties, General, in place of Unicode, use CharacterSet: Use Multi-Byte Character Set In Configuration Properties, Linker, Input: Additional Dependencies: psapi.lib In Configuration Properties, C++, Preprocessor, add _CRT_SECURE_NO_WARNINGS to the Preprocessor definitions That will avoid scanf, printf, etc. deprecation warnings. VS2005 used _CRT_SECURE_NO_DEPRECATE instead. I'm not sure which was used by VS2008. In configuration Properties, C++, Code Generations: Runtime Library: Multi-threaded (/MT) The default is Multi-threadded DLL which requires the Microsoft C++ runtime library be installed by the volunteers whereas "/MT "does not -- at least not if the latest CUDA runtime or OpenCL libraries also use the static libraries (which I don't think they do). /MT does work for CPU apps. Those are the mandatory changes I make. I start with a C++ Win32 application that is Empty without pre-compiled headers. I don't know if that is required or not. I've just always done it that way. If compiling and linking to the BOINC source rather than the boinc and boinc_api libraries, I set: Configuration Properties, C++, General Multi-Processor compilation: Yes (/MP) On a multi-core machine, each core compiles a source module making builds go faster. If using the libraries, it doesn't really help. Jon Sonntag On Thu, Feb 13, 2014 at 8:48 PM, David Anderson <da...@ssl.berkeley.edu>wrote: > Jon: > Thanks; I committed this. > Can you please check > http://boinc.berkeley.edu/trac/wiki/CompileAppWin > and see if we need to add/change anything for VS2010 and VS2012? > Thanks -- David > > > On 13-Feb-2014 6:12 PM, Jon Sonntag wrote: > >> To compile applications with VS2012 that are XP compatible, you have to >> set >> the platform toolset in the solution to be "Visual Studio 2012 - Windows >> XP >> (v110_xp)" which requires aVS2012 update 1 at a minimum. >> >> Doing so results in diagnostics_win.cpp reporting that FACILITY_VISUALCPP >> is undefined. Adding the following code just above the line #include >> "diagnostics_win.h" solves the problem. >> >> >> >> #if _MSC_VER > 1600 >> //required for compiling with v110_xp to create XP compatible >> executables >> #ifndef FACILITY_VISUALCPP >> #define FACILITY_VISUALCPP ((LONG)0x6d) //now defined in winerror.h >> #endif >> #endif >> >> #include "diagnostics_win.h" >> >> >> >> Jon Sonntag >> _______________________________________________ >> boinc_dev mailing list >> boinc_dev@ssl.berkeley.edu >> http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev >> To unsubscribe, visit the above URL and >> (near bottom of page) enter your email address. >> >> _______________________________________________ > boinc_dev mailing list > boinc_dev@ssl.berkeley.edu > http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev > To unsubscribe, visit the above URL and > (near bottom of page) enter your email address. > _______________________________________________ boinc_dev mailing list boinc_dev@ssl.berkeley.edu http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev To unsubscribe, visit the above URL and (near bottom of page) enter your email address.