目录
1.环境变量名
环境变量名 含义
$(SolutionDir) 解决方案目录:即.sln文件所在路径
$(ProjectDir) 项目根目录:, 即.vcxproj文件所在路径
$(Configuration) 当前的编译配置名称,比如Debug,或Release
$(ProjectName) 当前项目名称
$(SolutionName) 解决方案名称
$(OutDir) 项目输出文件目录
$(TargetDir) 项目输出文件目录
$(TargetName) 项目生成目标文件, 通常和$(ProjectName)同名, 如Game
$(TargetExt) 项目生成文件后缀名,如.exe, .lib具体取决于工程设置
$(TargetFileName) 项目输出文件名字。
$(ProjectExt) 工程文件后缀名,如.vcxproj
$(Platform) 是x64还是win32平台
2.目录设置
调试debug目录和最终生成的文件同一个目录,设置如下:
输出目录: $(ProjectDir)$(Platform)\$(Configuration)\
中间目录: $(Configuration)_x64\
命 令: $(OutDir)$(ProjectName).exe
工作目录: $(OutDir)
输出文件: $(OutDir)\$(ProjectName).exe
这里和上面的调试环境中的命令填的一样
3.Release模式下进行调试
参考这两篇文章的设置
4. 调试方法
4.1 打印到"输出"窗口
将结果打印到vs2013的"输出"窗口
CString str;
str.Format("send_index=%d, len = %d \r\n", send_index++, len);
OutputDebugString(str);
4.2 debug静态库
将模块编译成debug的静态库,然后在exe里调用,debug时可以进入到模块库里代码
5.知识点
5.1 引用其它工程
一个解决方案(sln)里有好多工程(vcxproj)
一个工程用到了其它工程,可以在引用里进行设置
6.问题积累
6.1 warning MSB8027
问题现象:
warning MSB8027: Two or more files with the name of moc_kit.cpp will produce outputs to the same location. This can lead to an incorrect build result. The files involved are GeneratedFiles\Debug\moc_kit.cpp
问题答案:
解决办法:
https://blog.csdn.net/dzhongjie/article/details/1032601441. 打开QT的Qt Project Setting
2. 修改MocDirectory为:
.\GeneratedFiles\$(ConfigurationName)
改成 .\GeneratedFiles