Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Convert c++ project from 4.0 to 3.5 framework

I have to change the targeted framework of a c++ project, from 4.0 to 3.5. I have found this question/answer helpful in how to do it: Change C++/CLI project to another framework than 4.0 with vs2010
I run into the following problem though: I am getting warnings:

 warning MSB3258: The primary reference "path\file.dll" could not be resolved because it has an indirect dependency on the .NET Framework assembly "mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" which has a higher version "4.0.0.0" than the version "2.0.0.0" in the current target framework

and the same for System, Version=4.0.0.0, Microsoft.VisualC, Version=10.0.0.0, System.Configuration, Version=4.0.0.0, System.Xml, Version=4.0.0.0, System.Security, Version=4.0.0.0, and System.Data.SqlXml, Version=4.0.0.0. This results in errors in all projects that depend on the file.dll which cannot be found.
I don't know how to fix this. I have Visual Studio 2008 installed as well - though it doesn't seem to care, and using Platform Toolset v90 makes even the c++ project not build. Please help !

like image 236
Thalia Avatar asked Apr 24 '12 21:04

Thalia


People also ask

How do I upgrade my .NET framework?

To update the target framework for all projects, right-click on the project (one by one), click properties, and from the “Application” tab change the target framework to the desired one as in the following screenshot and select “Yes” in the popup that is displayed after the framework is changed.


1 Answers

The Visual C++ compiler version 16.00 (shipped with Visual Studio 2010) is not capable of targeting any framework version other than 4.0.

To target 3.5, you must use the older (Visual Studio 2008) version of the C++ compiler, and you will not be able to use new C++ language features (such as preliminary C++11 support).

You can continue to use the Visual Studio 2010 IDE, by selecting the platform toolchain v90.

like image 183
Ben Voigt Avatar answered Sep 24 '22 01:09

Ben Voigt