I’m updating my application(C++ code) to take advantage of RealDWG library 2013 so that my application can read AutoCAD 2013 drawing files. Now I’m stuck in a link issue .
My C++ project is created in VC++ 2010. To be compatible with VC++ 2008, I set “Platform Toolset” as “V90”(V90 means VC2008). I have both VS2010 and VS2008 installed on my machine.
It worked well with RealDWG 2011 and 2012. However, after I changed settings in VS to use RealDWG 2013, my code couldn’t be built. The error is:
LINK : fatal error C1900: Il mismatch between 'P1' version '20081201' and 'P2' version '20080116'
LINK : fatal error LNK1257: code generation failed
I googled. One solution is to change compiler switch for static library. It’s impossible for me because I can’t recompile the library. The other solution is install VS2008 SP1. Many people got the problem fixed after installing SP1, but it didn’t work for me.
I also tried to compile it by changing “Platform Toolset” to “V100”(V100 means VC2010). It succeeded. But it wasn't what I wanted. If it is built in VC2010, my clients have to install VC2010 redistributable package on their machines.
Is this a RealDWG 2013 issue, or a VS issue, or RealDWG can't be compiled in VC2008 any more?
Thanks in advance.
Some links on this issue:
Solved! Go to Solution.
Solved! by artc2. See the answer in context.
That is correct.
It's not really clear, but that appears to be explaiing how to set up VC 2010 to build ARX and .NET apps for Acad 2011 and Acad 2012. RealDWG (and Acad) 2013 does require the VC 2010 runtime.
Yes, it's for ARX, but it is the docs I got after installing RealDWG 2013.
For RealDWG 2013, I can't set "Platform Toolset" = "v90" in VS2010 to make my application compatible with VC++ 2008. Am I right?
Access a broad range of knowledge to help get the most out of your products and services.