关于C++项目的环境配置和lib的总结
来源:互联网 发布:网络桥架 编辑:程序博客网 时间:2024/06/16 13:29
C++项目的环境配置
一般情况下的环境配置(库文件包含.h和lib文件,可以这么认为.h文件包含了函数的声明,而lib链接文件包含了函数的定义)
实际上从前两年开始学习编程,大部分时间都是写的C或者C++项目。在VS2010,VS2010,VS2015等软件上利用OpenGL,Directx11等程序库来编写C++项目,这个时候往往在调用相关C++库的时候,我们得预先给编程软件VisualStudio 配置好C++库的相关环境。
一般来说我们下载的C++编程库,一般都包含include和lib两个文件夹,如DirectxSDK june2010 软件开发包就包含了Directx11的早期版本,如下所示:
来看看include文件夹里面包含.h头文件,一般而言这些.h文件仅仅有函数的声明,da
而lib文件夹包含两个文件夹X64和X86,这两个文件夹都包含了lib链接库文件,如下所示:
下面正式讲解我们的C++项目的环境配置,如下所示,我们创建的C++项目(Win32项目或者Win32控制台程序)中,对项目右键,点击属性,进入属性配置表,如下所示:
然后环境配置一般分三步:
第一步,把刚才的 DirectSDKJune2010 的 include 文件夹的路径复制进入VC++目录的包含目录,我的include文件夹的路径目录为
C:\Program Files (x86)\june 2010 directx11\Include,配置如下所示:
第二步,把刚才的 DirectSDKJune2010 的 lib 文件夹的X86 路径复制进入VC++目录的库目录,我的lib的X86文件夹的路径目录为
C:\Program Files (x86)\june 2010 directx11\Lib\x86,配置如下所示:
说一下这里为什么是X86呢,因为我们的项目一般是在X86平台上运行的,如下所示:
第三步,在链接器->输入->添加依赖项中,添加相应的依赖库,我们这次有D3DX11.lib,D3D11.lib,DXGI.lib,Pdh.lib,Dinput8.lib,dxguid.lib。如下所示:
其实一般而言很多库的配置和Directx11库的配置都是差不多这个步骤的。
特殊情况下的C++项目的环境配置(库文件包含.h和.cpp文件,可以这么认为.h文件包含了函数的声明,.CPP文件包含了函数的定义)
特殊情况下的C++项目的环境配置(库文件仅仅包含hpp文件,hpp文件为特殊的C++文件格式,函数的声明和定义都位于.hpp文件)
这个情况我在使用OpenGL的数学库glm库中见过。hpp文件大致的情况可以从http://baike.sogou.com/v27318553.htm?fromTitle=HPP 了解。这个时候我们可以像上面的"一般情况下的环境配置"那样讲.hpp文件的路径放到C++项目的包含路径里,这样环境就配置好了。关于lib文件的总结
#include<iostream>using namespace std;void PrintHelloworld();
#include"HelloWorld.h"void PrintHelloworld(){cout << "HelloWorld" << endl;}
main.CPP (测试程序)
#include"HelloWorld.h"int main(){PrintHelloworld();return 0;}
下面怎么生成我们的"PrintHelloworld"函数的库呢,一步步看下面操作,右键我们的项目,点击属性-->配置属性-->常规-->配置类型,将”应用程序(.exe)“改为”静态库(.lib)“,然后运行我们的程序,在项目的根目录下Debug文件夹下生成我们的HelloWorld.lib文件(当然这个文件夹也存放了我们的.exe应用程序文件),如下所示:
之后我们在桌面创建一个文件夹HelloWorld存放刚才项目中的HelloWorld.h和HelloWorld.lib文件,如下所示:
我们再次创建一个C++控制台程序,仅有一个main.CPP
#include"HelloWorld.h"int main(){PrintHelloworld();return 0;}
我们又回到了“一般情况的配置文件”的三个步骤了:
第一步,将include文件夹路径复制进入VC++目录的包含目录,如下所示:
第二步,把lib文件夹的路径放入VC++目录的库目录,如下所示:
第三步,在链接器->输入->添加依赖项中,添加相应的依赖库,我们这次添加HelloWorld.lib,如下所示
然后运行我们的程序,得到与上面拥有三个文件(HelloWorld.h,HelloWorld.CPP,main.cpp)一样的输出结果,如下所示:
C++项目的环境配置会遇到的问题
error无法解析的外部符号XXXXX
- 关于C++项目的环境配置和lib的总结
- 关于JDK、NDK、ANT的安装和环境配置总结
- VS中关于.h和.lib丢失的配置问题
- 项目demo的lib库配置
- 关于.h .lib .dll的总结
- 关于开发环境的安装和配置
- 关于电子地图项目的总结和展望
- 关于Mac安装MySQL和MySQLWorkbench的初始密码,环境配置问题总结
- C++ 为项目的Debug配置增加依赖的库:cxcore200d.lib cv200d.lib highgui200d.lib
- 关于项目的总结
- 关于项目的总结
- 关于腾讯云服务器配置tomcat和发布web项目的总结
- 如何配置vue的环境配置和新建项目
- 在VS2008开发环境下,如何配置Lib库和dll库的名称
- [转载] 关于lib 和 dll 的作用
- 关于.lib和.dll的一点说明
- dll和lib的相关问题总结
- ARM第一个项目中关于C的总结
- CSS文字动画平移
- hadoop2.7.3源码解析之hdfs删除文件全流程分析
- Stream 中的 求最大值,第一个值,任意一个值,是否含有匹配元素
- spring cloud Feign
- servlet 文件下载
- 关于C++项目的环境配置和lib的总结
- 《机器学习实战》学习笔记-[12]-回归-树回归
- epoll介绍和使用
- POJ
- 【shell】tr命令及常见用法
- poj 3320 尺取法
- bzoj 1179(tarjan缩点+最长路)
- 用C语言实现从C到C++的注释转换
- 由前序遍历和中序遍历重建二叉树