VS C/C++开发环境配置
用VS进行C/C++开发,环境配置遵循以下步骤:
- 指定头文件目录。“配置属性”→"VC++目录"→“包含目录”。
- 指定库目录。“配置属性”→“VC++目录”→“库目录”。
- 指定依赖库。“配置属性”→“链接器”→“输入”→“附加依赖项”。
- 如果使用动态链接,还需要在PATH环境变量中包含动态库路径。
"VC++"下除“库目录”外,还有一个“引用目录”。这两个目录有什么区别呢?“库目录”是为链接器准备的,告诉链接器到什么地方去寻找import lib和static lib;“引用目录”是为编译器准备的,帮助编译器找到元数据(metadata)文件,如:type libraries, .NET assemblies, WinRT .winmd files。
一个让人迷惑的地方是“配置属性”→“C/C++”→“常规”下的“附加包含目录”。既然已经有“包含目录”了,为什么又多出来一个“附加包含目录”?官方文档对“包含路径”的解释是:Directory settings displayed in the window are the directories that Visual Studio will search for include files referred to in your source code files. Corresponds to environment variable INCLUDE;对“附加包含路径”的解释是:/I[ ]directory The directory to be added to the list of directories searched for include files。所以,“包含目录”实际上修改了INCLUDE环境变量的内容,而“附加包含目录”只是指定了/I选项传递给编译器的参数。
VS中动态链接与静态链接的使用。静态链接的使用比较好理解,首先指定静态库(static lib)路径,然后指定依赖库。使用动态链接时,有一点需要注意。Windows中的动态库都有与之对应导入库(import lib)。如果要链接一个动态库,需要将对应的导入库所在的目录添加到“库目录”,依赖的导入库添加到“附加依赖项”(导入库就像一个伪静态库)。同时,要修改“配置属性”→“C/C++”→“代码生成”下的“运行库”选项,改为“使用DLL”。
posted on 2018-03-17 11:33 songlingfei 阅读(859) 评论(0) 编辑 收藏 举报