I need to write a program that will run on a intel atom d525 processor with windows xp installed. I am using Parallel Studio 2013 with Visual Studio 2012.
When I tried running my code on the machine with windows XP I got the following error:
... is not a valid win32 application.
After some initial research I found out that this was because the console application compiled with Visual C++ uses windows APIs that are not available in windows XP and it has provided a special compiler with which you can compile code that is compatible for windows XP.
This is all very well, and I got this to work. The problem is that I need to highly optimise the code, and I was planning on using the intel C++ compiler to do this. However I have not found a way to compile code with the Intel C++ compiler that is compatible on windows XP.
I tried using
#define _WIN32_WINNT 0x0502
but maybe I did something wrong, because that did not seem to do anything.
I do not necessaraly need to use a console application, just some way to start the program in windows XP.
You're probably aware that the service pack for VS2012 supports specific libraries and instructions
on how to link them, in order to be able to run on XP. I can't tell whether you tried to follow Microsoft's instructions about link dependencies for XP target when using Intel C++; it looks like maybe not. The VS2010 libraries also may work.
My apologies for the late reply. The Easter Holiday came in the way of working on this project.
I have checked the dependencies that Microsoft's instructions mention for visual studio while compiling with the Intel Compiler and did get it to work. One thing I noticed was that Visual Studio adds a comma on the line to define the version, and this comma causes the compilation to fail. I had previously removed the entire "version" line, which is why it did not work on the windows XP platform. Removing the comma made the compiler understand the command and then everything worked fine.
Thanks for the advice
I am late for the party... but I had a similar problem with running 32-bit Intel-compiled DLL on 64-bit Windows 7. I solved it by statically linking my DLL to libmmds.lib.See https://software.intel.com/en-us/forums/intel-c-compiler/topic/306546 for details...