Quantcast
Channel: CodeGuru Forums - Visual C++ Programming
Viewing all articles
Browse latest Browse all 3029

%(LinkOutputFile)

$
0
0
I like to use target names which give me some information about whether the target is 32-bit or 64-bit and also whether it's a Debug build. So if I was building a Debug build of boost-regex (for example) the built DLL names might look like this:-

Code:

boost-regex32D.dll
boost-regex64D.dll

In my project's Linker properties, the 64-bit target would look like this:-

Code:

$(OutDir)$(TargetName)64D$(TargetExt)
It always worked fine when I was building with VS2005. However, I recently upgraded to VS2015 Community Edition which doesn't seem to like me changing things like this. I see this MSBuild warning now:-

Quote:

Warning MSB8012 TargetName(boost-regex) does not match the Linker's OutputFile property value (boost-regex64D). This may cause your project to build incorrectly. To correct this, please make sure that $(OutDir), $(TargetName) and $(TargetExt) property values match the value specified in %(Link.OutputFile).
I opened Property Manager and noticed a hierarchy of about 4 property sheets. I figured I should set up my name somewhere earlier in the chain. But it doesn't matter how early in the chain I set this up - I always see the above warning. So I'm guessing I need to change the value in %(LinkOutputFile). But what is %(LinkOuptutFile) and where do I find it / change it :confused:

Alternatively - can I change $(TargetName) somewhere, so that it's a different name for different build configs?

Viewing all articles
Browse latest Browse all 3029

Latest Images

Trending Articles



Latest Images