VS2010添加默认路径,库以及Lib
下面以OpenCV为例,不需要每次打开VS2010都手动添加OpenCV的库和lib,具体方法如下:
VC++目录
步骤一:用任意文本编辑器打开: 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为系统自带。
<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";
(此为
release
的所有opencv的动态库)
步骤四:保存。此后在新建的工程中会自动添加你所输入的库。如下图所示。
但是附加依赖项将只会出现你添加代码中双引号内的库文件,这就意味着原本系统自带的库没有在附加依赖项里面,所以建议在双引号中加入系统自带的库文件。
完成上面两个配置后,你在VS下使用OPENCV将不用在重复的添加包含的文件路径和所需要的库,对于初学者来说,方便很多。
VS2010添加默认路径,库以及Lib的更多相关文章
- 添加Ubuntu的库文件路径
添加Ubuntu的库文件路径 http://blog.csdn.net/r91987/article/details/6879062 关于ubuntu添加共享库路径: 1. 将绝对路径写入 /etc/ ...
- Linux系统中如何添加自己的库文件路径
库文件在连接(静态库和共享库)和运行(仅限于使用共享库的程序)时被使用,其搜索路径是在系统中进行设置的.一般 Linux 系统把 /lib 和 /usr/lib 两个目录作为默认的库搜索路径,所以使用 ...
- linux 中添加自己的库路径的方法 cannot open shared object file: No such file or directory
本文转自:http://blog.csdn.net/maotianwang/article/details/44619197 库文档在连接(静态库和共享库)和运行(仅限于使用共享库的程式)时被使用,其 ...
- ubuntu---记录.动态库默认路径的踩坑
发现这个问题,还是经过一个报错问题卡了好多天,然后请求好多人的支援,最后个人的疑问:为什么明明指明了路径,生成 .SO 没有问题,在调用.SO 就有问题,报错各种找不到函数或者未定义,然后把缺的 *. ...
- linux下添加动态链接库路径、动态库加载等方法
linux下添加动态链接库路径的方法 2017年01月20日 10:08:17 阅读数:5596 Linux共享库路径配置 Linux下找不到共享库文件的典型现象为明明已经安装某个软包(如libn ...
- Linux手动添加系统环境共享库路径
1.在以下目录 #/etc/ld.so.conf.d 添加相应的xxx.conf 2.写入所要共享库的路径 如:/usr/lib/ 3.导入共享库配置 $ldconfig
- 为Python添加默认模块搜索路径
方法一:函数添加1 import sys2 查看sys.path3 添加sys.path.append("c:\\") 方法二:修改环境变量w用户可以修改系统环境变量PYTHONP ...
- VS2010修改默认配置路径
视图->属性管理器 弹出如下截图:
- VS2010 C++环境下DLL和LIB文件目录及名称修改
VS2010 C++环境下DLL和LIB文件目录及名称修改 转自:http://blog.csdn.net/archielau/article/details/8507581 DLL工程,Debug版 ...
随机推荐
- [积累]C++复习 海大2014硕士生面试题微信系统总结
好久没用C++了,正好同学有个面试题,于是就帮忙看了一下.尽管对C++的知识了解不少, 可是长期被Java浸淫, 发现这个简单的程序却也写着也不是那么顺手.好在最后还是搞定了,以下分析一下,题目例如以 ...
- kgdb接收一个数据包详解
0 kdb>kgdb // 可进入kgdb 模式 if (dbg_kdb_mode) { error = kdb_stub(ks); } else ...
- Android学习笔记(十三)——碎片(一)
碎片 碎片可看作第二种形式的活动,能够创建碎片来包括视图. 碎片总是嵌入在活动中,一般有两种常见形式: 1.碎片A和碎片B分别处于不同的活动中,当选择碎片A中的某一项时,触发碎片B启动: 2.碎片A和 ...
- redis 获取key 过期时间
<pre name="code" class="html">127.0.0.1:6379> keys *b4f107c6-e96c-4a1e- ...
- Linux I/O 重定向详解及应用实例
Linux I/O 重定向详解及应用实例 简解 > 输出 < 输入 >> 追加 & [> | < | >>]之前:输入输出; ls /dev & ...
- UNICODE和ANSI字符串的转换(解释了MultiByteToWideChar,WideCharToMultiByte,GetTextCharsetInfo,GetTextCharset,IsDBCSLeadByte,IsDBCSLeadByteEx,IsTextUnicode一共7个函数)
继上集故事<多字符集(ANSI)和UNICODE及字符串处理方式准则 >,我们现在有一些特殊需求: 有时候我们的字符串是多字符型,我们却需要使用宽字符型:有的时候却恰恰相反. Window ...
- Java模拟POST表单提交HttpClient操作
public static void Login() { String url = "http://www.***.com/login"; PostMethod postMetho ...
- Python的对象和类型
Python使用对象来存储数据,构造任何类型的值都是一个对象. 任何一个对象都有三个特性:身份,类型和值. 身份是对象的唯一标识,可以通过内建函数id()得到,这个值可以认为是该对象的内存地址. Py ...
- POJ 3974 最长回文字串(manacher算法)
题意:给出一个字符串,求出最长回文字串. 思路:一开始我直接上了后缀数组DC3的解法,然后MLE了.看了DISCUSS发现还有一种计算回文字串更加优越的算法,就是manacher算法.就去学习了一下, ...
- Java线程状态及Thread类中的主要方法
要想实现多线程,就必须在主线程中创建新的线程对象. 不论什么线程一般具有5种状态,即创建,就绪,执行,堵塞,终止. 创建状态: 在程序中用构造方法创建了一个线程对象后,新的线程对象便处于新建状态,此时 ...