当前位置: 首页 > news >正文

【VS】VS工程设置(包含目录、库目录、附加包含目录、附加库目录、附加依赖项)等...

目录

工程结构

工程设置

设置exe输出目录、debug目录、生成的exe名称

配置include文件夹路径

配置库文件依赖(我这里是依赖静态库lib)

配置库文件所在目录

配置依赖的库文件

包含目录、库目录、附加包含目录、附加库目录、附加依赖项


工程结构

工程设置

(注意:如何发现设置正确,却一直报找不到错误,就需要注意Debug/release *x86/x64 组合的工程是独立设置的,设置的时候一定要看清楚你的工程是什么组合)

设置exe输出目录、debug目录、生成的exe名称

右击工程-->属性

请用$(SolutionDir) 这个宏

配置include文件夹路径

配置库文件依赖(我这里是依赖静态库lib)

配置库文件所在目录

配置依赖的库文件

 

包含目录、库目录、附加包含目录、附加库目录、附加依赖项

VS项目中的包含目录、库目录、附加包含目录、附加库目录、附加依赖项均在"项目->属性->配置属性"下进行配置,具体说明如下:

VC++目录:

    包含目录:寻找#include<xxxx.h>中的xxxx.h的搜索目录

    库目录:寻找.lib文件的搜索目录

C/C++:

    常规->附加包含目录:寻找#include<xxxx.h>中的xxxx.h的搜索目录(每一项对应一个文件夹XXXX,文件夹中包含了编译时所需的头文件,使用时直接#include<XXXX>即可)

链接器:

    常规->附加库目录:寻找.lib文件的搜索目录

    输入->附加依赖项:lib库(C++的库会把函数、类的声明放在*.h中,实现放在*.cpp或*.cc中。编译之后,*.cpp,*.cc,*.c会被打包成一个.lib文件,这样可以保护源代码)

常见问题:

1.包含目录附加包含目录(库目录和附加库目录)的区别:

    包含目录:修改了系统的include宏的值,是全局的;

    附加包含目录:用于当前项目,对其他项目没有影响。

    (库目录附加库目录的区别同上)

2.可知包含目录和附加包含目录(库目录和附加库目录)的区别主要在于全局还是当前,那么当需要对某工程添加这些目录时,通常情况下,都是在附加包含目录和附加库目录中添加的。

3. 要使用一个库,除了要include其头文件以外(附加包含目录),还要在链接过程中把lib加进去(附加库目录、附加依赖项)。

4.添加方法:

    附加包含目录---添加工程的头文件目录:

      项目->属性->配置属性->C/C++->常规->附加包含目录:加上头文件的存放目录;

    附加库目录---添加文件引用的lib静态库路径:

      项目->属性->配置属性->链接器->常规->附加库目录:加上lib文件的存放目录;

    附加依赖项---添加工程引用的lib文件名:

      项目->属性->配置属性->链接器->输入->附加依赖项:加上lib文件名。

5.当需要向项目中添加.dll动态链接库时,直接将需要添加的.dll文件拖拽到项目生成的.exe所在的文件夹下即可(项目->属性->配置属性->常规->输出目录,可以看到.exe生成在哪个目录下)。

6.在添加上述几个目录的路径的时候,可以看到$(xxxx),这就是宏了,可以点开右下角的宏查看这些分别代表什么字符串。
原文链接:https://blog.csdn.net/u012043391/article/details/54972127

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【linux】最小测试工程miniTest
  • 【VS】判断dll/lib是32/64位|查看lib是导入库/静态库的方法
  • 【C++】C++写后端程序
  • 【C++】C++ 知识点100题
  • 【架构】傻瓜都能看懂的高并发量服务器架构
  • 【mySQL】MySQL数据库知识整理
  • 【mySQL】Mysql InnoDB 共享表空间和独立表空间 区别和优缺点
  • 【算法】程序的时间复杂度计算
  • 【算法】CRC、MD5、SHA1区别
  • 【libevent 】libevent 多线程实现高并发
  • 【redis】hiredis-vip (hiredis封装成支持cluster的api)
  • 【知识】IPxx防水等级 说明
  • 【安全】哈希(hash)算法可以防止数据被篡改的原理是什么
  • 【数据库】时序数据库InfluxDB 性能测试和为什么时序数据库更快、时序数据库应用场景...
  • 【安全编码】代码质量|C语言安全编码---增加中
  • [Vue CLI 3] 配置解析之 css.extract
  • 002-读书笔记-JavaScript高级程序设计 在HTML中使用JavaScript
  • 5、React组件事件详解
  • EOS是什么
  • IE报vuex requires a Promise polyfill in this browser问题解决
  • JSONP原理
  • Spark RDD学习: aggregate函数
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • swift基础之_对象 实例方法 对象方法。
  • TCP拥塞控制
  • 记录:CentOS7.2配置LNMP环境记录
  • 终端用户监控:真实用户监控还是模拟监控?
  • ​​​​​​​​​​​​​​Γ函数
  • ​2021半年盘点,不想你错过的重磅新书
  • ​Base64转换成图片,android studio build乱码,找不到okio.ByteString接腾讯人脸识别
  • # Swust 12th acm 邀请赛# [ A ] A+B problem [题解]
  • #NOIP 2014# day.1 T2 联合权值
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (C#)获取字符编码的类
  • (solr系列:一)使用tomcat部署solr服务
  • (办公)springboot配置aop处理请求.
  • (二)换源+apt-get基础配置+搜狗拼音
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (附源码)springboot家庭财务分析系统 毕业设计641323
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (回溯) LeetCode 40. 组合总和II
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (三)Kafka离线安装 - ZooKeeper开机自启
  • (十)T检验-第一部分
  • (算法二)滑动窗口
  • (一)十分简易快速 自己训练样本 opencv级联haar分类器 车牌识别
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • (转)树状数组
  • .mysql secret在哪_MySQL如何使用索引
  • .NET Core 实现 Redis 批量查询指定格式的Key
  • .NET HttpWebRequest、WebClient、HttpClient
  • .NET 命令行参数包含应用程序路径吗?
  • .NET 项目中发送电子邮件异步处理和错误机制的解决方案
  • .NET开源项目介绍及资源推荐:数据持久层
  • .Net实现SCrypt Hash加密