如何把多个lib文件合并在一个lib文件中
2013-11-12 08:44
357 查看
我们利用OpenCV编程的时候一般需要关联多个lib文件,如果发布程序,不仅需要发布我们自己生成的lib,还需要将这些lib一起带过去。那么有没有一种可以将这么多lib文件一起打包在一起的方法呢?
比如我的程序用到了这三个lib,
#pragma comment( lib, "opencv_core246d.lib" )
#pragma comment( lib, "opencv_highgui246d.lib" )
#pragma comment( lib, "opencv_imgproc246d.lib" )
我想合并为一个opencv.lib。
这里我们将利用lib.exe完成这个任务:
我的VS编程环境是vs2010,安装文件夹在C:\Program Files\Microsoft Visual Studio 10.0,如果你的版本不是2010请换成其他路径。
1. 在C:\Program Files\Microsoft Visual Studio 10.0\VC\bin 的文件夹中找到lib.exe,双击运行。
哎?缺少dll?没关系,将缺少的mspdb100.dll,mspdbcore.dll,mspdbsrv.exe,msobj100.dll 这四个文件从C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE这个文件夹中拷贝粘贴到刚才的bin文件夹中。现在点击运行lib.exe
就已经不报错了。
2. WIN+R快捷键打开“运行”,或者开始->运行,输入cmd打开命令行程序。我们需要利用cd命令进入到 C:\Program Files\Microsoft Visual Studio 10.0\VC\bin 这个文件夹中去,在输入cd C:\Program Files\Microsoft Visual Studio 10.0\VC\bin (如果怕输错的话也可以cd一级一级的进入,比如先cd C:\Program Files 然后 cd Microsoft
Visual Studio 10.0)。
3. 将我们需要合并的几个lib文件拷贝到这个bin文件夹中,为了方便起见,我把他们重命名为lib1.lib lib2.lib lib3.lib。
4. 在命令行中输入 lib.exe /out:opencv.lib lib1.lib lib2.lib lib3.lib
如果有想要添加的其他lib都可以添到后面,用空格隔开。
5. 点击回车,如果你拷贝的lib中有函数是重复定义的(是同样的函数,而不是重载),那么lib.exe会报warning。当时我用了两个一样的lib进行测试,不停的报错,差点把命令行程序关掉了,呵呵呵。
6. 运行结束在后,在bin文件夹中,当当当当!opencv.lib文件出现了!
大功告成!
2013-11-12
9:54:33
比如我的程序用到了这三个lib,
#pragma comment( lib, "opencv_core246d.lib" )
#pragma comment( lib, "opencv_highgui246d.lib" )
#pragma comment( lib, "opencv_imgproc246d.lib" )
我想合并为一个opencv.lib。
这里我们将利用lib.exe完成这个任务:
我的VS编程环境是vs2010,安装文件夹在C:\Program Files\Microsoft Visual Studio 10.0,如果你的版本不是2010请换成其他路径。
1. 在C:\Program Files\Microsoft Visual Studio 10.0\VC\bin 的文件夹中找到lib.exe,双击运行。
哎?缺少dll?没关系,将缺少的mspdb100.dll,mspdbcore.dll,mspdbsrv.exe,msobj100.dll 这四个文件从C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE这个文件夹中拷贝粘贴到刚才的bin文件夹中。现在点击运行lib.exe
就已经不报错了。
2. WIN+R快捷键打开“运行”,或者开始->运行,输入cmd打开命令行程序。我们需要利用cd命令进入到 C:\Program Files\Microsoft Visual Studio 10.0\VC\bin 这个文件夹中去,在输入cd C:\Program Files\Microsoft Visual Studio 10.0\VC\bin (如果怕输错的话也可以cd一级一级的进入,比如先cd C:\Program Files 然后 cd Microsoft
Visual Studio 10.0)。
3. 将我们需要合并的几个lib文件拷贝到这个bin文件夹中,为了方便起见,我把他们重命名为lib1.lib lib2.lib lib3.lib。
4. 在命令行中输入 lib.exe /out:opencv.lib lib1.lib lib2.lib lib3.lib
如果有想要添加的其他lib都可以添到后面,用空格隔开。
5. 点击回车,如果你拷贝的lib中有函数是重复定义的(是同样的函数,而不是重载),那么lib.exe会报warning。当时我用了两个一样的lib进行测试,不停的报错,差点把命令行程序关掉了,呵呵呵。
6. 运行结束在后,在bin文件夹中,当当当当!opencv.lib文件出现了!
大功告成!
2013-11-12
9:54:33
相关文章推荐
- Copy LinkedList With Arbitrary Node
- sap锁定帐号
- 古今之成大事业、大学问者,必经过三种之境界
- Android--Service之AIDL传递复杂对象
- 如何得到JDBC Insert 语句执行后插入Oracle 数据库记录的主键
- Thinkpad T400 Fan error报错非风扇问题解决一例
- .NET:CLR via C# Primitive Thread Synchronization Constructs
- ASP.NET MVC 上传大文件时404
- 如何移除wordpress Admin Bar 上的 WordPress Logo
- LESS详解之函数(二)
- uva 10905 Children's Game
- LeetCode|3Sum
- Laravel RESTful快速部署指南(三)——模板化
- nhibernate 的简介 设计过程 以及 增删改查
- SFTP不能生效
- 前端开发工程师知识领域
- 变量声明的本质
- C语言函数集(三)
- JAVA文件字节单位转换
- Android抽象布局——include、merge 、ViewStub