VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 1093|回复: 0

[讨论] 添加Lib库文件

[复制链接]
46_avatar_middle
在线会员 发表于 2016-11-12 10:10:10 | 显示全部楼层 |阅读模式
添加Lib库文件
1、VC6.0的项目属性设置:


2、VS2010项目属性的设置:
2010项目中添加lib库
      应用程序使用外部库时需要进行加载,两种库的加载本质上都是一样:提供功能和功能的定义。vs2005 c++ 项目设置外部库方法如下:
1)、添加编译所需要(依赖)的 lib 文件
     在“项目->属性->配置属性->连接器->输入->附加依赖项”里填写“winsock.lib”,多个 lib 以";"隔开。等同于“#pragma comment(lib, "*.lib") ”语句。


2)、添加库(libs)文件目录
     方法 1:项目->属性->配置属性->连接器->常规->附加库目录”
     方法 2:[菜单]“工具->选项->项目和解决方案->c++ 目录”,选择对应平台,然后添加所需“库文件”目录
     这个设置类似于设置环境变量,主要是为程序设置搜索的库目录,真正进行库加载还需要进行第一种设置!
3)、添加包含(include)文件目录
     方法 1:“项目->属性->配置属性->c/c++->常规->附加包含目录”
     方法 2:[菜单]“工具->选项->项目和解决方案->c++ 目录”,添加所需“包括文件”目录
4)、导入库(import)
在“项目->属性->配置属性->连接器->高级->导入库”填写需要生成的导入库。


步骤一:用任意文本编辑器打开:  VS安装目录中的\VC\VCWizards\default.vcxproj
步骤二:定位到文件末尾,在</Project>之前插入如下内容
<PropertyGroup>
    <IncludePath>OPENCV的安装路径\opencv\build\include\opencv;OPENCV的安装路径\opencv\build\include;D:\Program\OpenCV\opencv\build\include\opencv;$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSdkDir)include;$(FrameworkSDKDir)\include</IncludePath>
   <LibraryPath>OPENCV的安装路径\opencv\build\x86\vc10\lib;$(VCInstallDir)lib;$(VCInstallDir)atlmfc\lib;$(WindowsSdkDir)lib;$(FrameworkSDKDir)\lib</LibraryPath>
</PropertyGroup>
其中<IncludePath></IncludePath>之间的路径即为下图的“包含目录”。加入自己需要添加的目录。而$(VCInstallDir)atlmfc\include;$(WindowsSdkDir)include;$(FrameworkSDKDir)\include为系统自带。
&#160; &#160; &#160;<LibraryPath></LibraryPath>之间的路径为下图的“库目录”。加入自己需要添加的目录。而$(VCInstallDir)lib;$(VCInstallDir)atlmfc\lib;$(WindowsSdkDir)lib;$(FrameworkSDKDir)\lib为系统自带

因为修改后,“包含目录”和“库目录”将只会出现你输入的目录,所以建议把VS原本默认的目录页一同输入到<IncludePath></IncludePath>中去。
步骤三:保存修改。这样修改之后新建的工程将会自动的加入你添加的文件路径,无需每次添加。但对于修改之前已有的工程,不会有效。
链接器
对于添加的库目录内的库文件。可以自动为每一个工程添加。
步骤一:找到VS安装目录下的Microsoft Visual Studio 10.0\VC\VCWizards\2052 中的common.js,用文本编辑器打开
步骤二:找到function AddCommonConfig函数中如下代码
var LinkTool = config.Tools("VCLinkerTool");
      if (!bForEmptyProject) LinkTool.SubSystem = subSystemWindows;
      LinkTool.GenerateDebugInformation = true;
其中这段代码在该函数中出现两次,第一次为debug配置,第二次为release配置。
步骤三:在第一次出现该段代码的后面加上
LinkTool.AdditionalDependencies = "opencv_calib3d231d.lib opencv_contrib231d.lib opencv_core231d.lib opencv_features2d231d.lib opencv_flann231d.lib opencv_gpu231d.lib opencv_haartraining_engined.lib opencv_highgui231d.lib opencv_imgproc231d.lib opencv_legacy231d.lib opencv_ml231d.lib opencv_objdetect231d.lib opencv_ts231d.lib opencv_video231d.lib";
(此为debug的所有opencv的动态库)
在第二次出现该段代码的后面加上
LinkTool.AdditionalDependencies = "opencv_calib3d231.lib opencv_contrib231.lib opencv_core231.lib opencv_features2d231.lib opencv_flann231.lib opencv_gpu231.lib opencv_haartraining_engine.lib opencv_highgui231.lib opencv_imgproc231.lib opencv_legacy231.lib opencv_ml231.lib opencv_objdetect231.lib opencv_ts231.lib opencv_video231.lib";
(此为&#160;release&#160;的所有opencv的动态库)
步骤四:保存。此后在新建的工程中会自动添加你所输入的库。如下图所示。

但是附加依赖项将只会出现你添加代码中双引号内的库文件,这就意味着原本系统自带的库没有在附加依赖项里面,所以建议在双引号中加入系统自带的库文件。




上一篇:vc常见20个错误讲解
下一篇:socket阻塞与非阻塞,同步与异步
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-5-19 23:39

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表