在“项目属性→链接器(或管理员)→常规→输出文件”处填写输出文件路径。
输出目录(OutDir)一般为$(SolutionDir)$(ConfigurationName)
输出文件(OutputFile)一般为$(OutDir)/$(ProjectName).exe(*.lib,*.dll)
1.环境变量宏说明
$(SolutionDir)为*.sln文件所在文件夹,尾带‘/’;
$(ProjectDir)为*.vcproj文件所在文件夹,尾带‘/’;
$(PlatformName)为平台名称,例如Win32,Windows Mobile 6 Professional SDK(ARMV4I)。
$(ConfigurationName)为*.sln的*.vcproj文件所在文件夹下的debug、release文件夹,参考*.vcproj文件中的<Configurations>配置项。
2.生成目录的配置
输出目录(OutDir):$(ProjectDir)$(PlatformName)/$(ConfigurationName)
以上穿插$(PlatformName)主要是为了发布多平台版本考虑,对于普通的单平台开发,该路径可选。
TargetDIr为OutDir后加‘/’。
输出文件主要按项目区分如下:
(1)DLL项目:*.pdb,*.exp,*.lib

(2)EXE项目:*.pdb
中间目录(IntDir):$(OutDir)/Intermediate
中间文件包括*.pch,*.obj,(*.sbr),vc6(8)0.idb,vc6(8)0.pdb
输出文件:$(OutDir)/$(ProjectName).lib(dll、exe)
(1)DLL项目:*.ilk,*.dll
(2)EXE项目:*.ilk,*.exe
关于*.pch,参考《预编译头文件》;注意*.ilk和*.pdb文件只有在Debug版本时才会生成,关于*.ilk和*.pdb,参考《VC项目配置基础》。
一般一个大的工程(*.dsw,*.sln),同时含有LIB、DLL和EXE项目,习惯将LIB输出到项目输出目录或将这些链接时用到的LIB放到专门的目录;EXE和其运行依赖的DLL都输出到BIN目录,这样便于项目的组织和最终成果的发布。
七.关于相对目录
相对目录是相对某个文件而言的,例如在VC项目属性配置附加包含目录、附加库目录则是相对*.dsp、*.vcproj文件而言的;在某个*.c、*.cpp文件中使用#include包含命令,是相对这个*.c、*.cpp文件而言的。
当前目录是可见的,一般直接引用文件名(夹),对于子文件夹可以添加”./”。
..:父目录
../include:父目录下的include目录
../..:祖父目录
../../include:祖父目录下的include目录
在VC2005中,“属性窗口”可查看当前文档的“文件信息”,其中可查看文件相对*.vcproj的相对路径。
八.依赖项目联编
一个解决方案(dsw、sln)可以创建很多辅助子项目(dsp、vcproj),如何设置使在编译主项目的时,先编译所依赖的辅助项目呢?
一般会配置辅助子项目的OutDir和主项目相同,这样生成的lib或dll对于主项目exe直接可见。
VC6.0中:
选择菜单“Project→Dependencies”可以选择需要联编的项目。
VC2005中:
在解决方案资源管理器中右击项目名称,选择“引用”或“项目依赖项”菜单可添加(选择)引用依赖项目;选择“项目生成顺序”可查看建立项目依赖后的项目生成顺序。
本文来自电脑杂谈,转载请注明本文网址:
https://www.pc-fly.com/a/ruanjian/article-41594-6.html
教育质量大滑坡是顺理成章的事了
我等着周一抢票呢哈哈~