2009/07/31

Visual Studio 2005 - Warning LNK 4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification

The above warning occurs as a result of a clash between two features of the Visual Studio development suite and can be eliminated by either disabling support for "Edit and Continue" or eliminating Incremental Compilation. The first allows you to edit code while debugging when stopped at a break point. The second specifies whether linking is done incrementally or not (that is, one included library at a time). Linking incrementally can result in larger file sizes and occassionally "jump thunks," which, I believe, are libraries that require multiple memory hops to reach.

If you link a module that was compiled with /ZI, which implies an internal linker option called /EDITANDCONTINUE, and a module that was compiled with /OPT:REF, /OPT:ICF, or /INCREMENTAL:NO, which imply no /EDITANDCONTINUE, you will get LNK4075.

The property controlling "edit and continue" can be changed in the Project Properties Pages -> Project Configuration -> C/C++ -> Debug Information Format, whereas the property specifies if linking should be done incrementally can be changed in the Project Properties Pages -> Project Configuration -> Linker -> Enable Incremental Linking.

No comments:

Post a Comment

Google Analytics

Blog Archive

Followers