编译Touchlib出现问题(仍然尚未解决!)
- 博客分类:
- 技术杂绘
编译Touchlib出现问题(仍然尚未解决!)
2009年10月18日
%$%#!@$^)*)#$%%^!A的B,C你的D的!
要疯掉了
!
编译Touchlib出现问题,搞了一整天还是没有搞定!
问题一:
syntax error : identifier 'CAMSchedule'
这主要是因为在不同SDK的目录里包含了 多个 schedule.h file 和 refclock.h
因此需要在 Tools-> options -> vc++ directories -> include
中调整 include 的顺序
将samples/multimedia/directshow/baseclasses 放到其他的sdk之前即可
搞定!
问题二:
输出信息:
1>正在生成代码...
1>正在编译资源清单...
1>Microsoft (R) Windows (R) Resource Compiler Version 6.0.5724.0
1>Copyright (C) Microsoft Corporation. All rights reserved.
1>正在链接...
1> 正在创建库 D:\Program Files\touchlib\build\VC8\/../../lib/touchlibd.lib 和对象 D:\Program Files\touchlib\build\VC8\/../../lib/touchlibd.exp
1>LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用 /NODEFAULTLIB:library
1>DSVLCaptureFilter.obj : error LNK2019: 无法解析的外部符号 __imp__CoInitialize@4,该符号在函数 "public: __thiscall DSVLCaptureFilter::DSVLCaptureFilter(char *)" (??0DSVLCaptureFilter@@QAE@PAD@Z) 中被引用
1>D:\Program Files\touchlib\build\VC8\\..\..\bin\touchlibd.dll : fatal error LNK1120: 1 个无法解析的外部命令
1>生成日志保存在“file://D:\Program Files\touchlib\src\Debug\BuildLog.htm”
1>touchlib - 2 个错误,93 个警告
========== 全部重新生成: 成功 0 个,失败 1 个,跳过 0 个 ==========
查阅了好多资料:
按照Touchlib官网的说法(官网提供的错误输出信息仅有错误信息,不包含冲突警告,我不知道是它只贴出来了错误信息,忽略了所有警告信息,还是压根就没有这条冲突警告):可能是没有增加环境变量;需要增加DSVL_HOME,值为dsvl的root目录;
然而确认这个我早已经配置好的!
按照有关linker的说法:可能是运行库时库的问题;
解决方法1:运行时库现在包含可防止混合不同类型的指令。如果试图在同一个程序中使用不同类型的运行时库或使用调试和非调试版本的运行时库,则将收到此警告。例如,如果编译一个文件以使用一种运行时库,而编译另一个文件以使用另一种运行时库(例如单线程运行时库对多线程运行时库),并试图链接它们,则将得到此警告。应将所有源文件编译为使用同一个运行时库。有关更多信息,请参见使用运行时库(/MD、/MT 和 /LD)编译器选项。于是打开项目属性,在“配置属性-->C/C++-->代码生成-->运行时库”中将“多线程(/MT)”修改为“多线程调试(/MTd)”,再重新调试一下,问题解决。
尝试过,确定无效!
解决方法2:找到需要调用的模块的工程,重新编译,使其生成该运行时库下的.lib文件。
尝试过,确定无效!
按照Linker的又一个说法:涉及到加载库顺序的问题(比如MFC库加载一定要在标准C库之前,我猜想是因为MFC也需要加载标准C库,因此就不会二次加载标准C库)。
解决方法1:需要对连接顺序进行调整。
尝试过,仍然确定无效!
解决方法2:忽略所有默认库,不过这样可能会出问题。
尝试过,果然出问题,因为程序确实调用了很多默认库,绝对不可以全部忽略。
解决方法3:忽略冲突的默认库。
尝试过,冲突倒是没有了,但是仍然有这样的错误信息,又回到了官网提供的连接错误问题(这次确实没有了冲突警告(那是当然的,冲突的默认库根本没有加载嘛!))
1>DSVLCaptureFilter.obj : error LNK2019: 无法解析的外部符号 __imp__CoInitialize@4,该符号在函数 "public: __thiscall DSVLCaptureFilter::DSVLCaptureFilter(char *)" (??0DSVLCaptureFilter@@QAE@PAD@Z) 中被引用
抓狂,无奈,崩溃ing!
%¥%@¥!#%!%)**IOIPPDD你CAX的Y!
吃饭去!
发表评论
-
Select 模型的使用 简单聊天室的实现
2012-01-20 00:42 1119Select 模型的使用 简单 ... -
MFC: 多人聊天服务器 服务器端之OICPServer类
2012-01-20 00:42 945MFC: 多人聊天服务器 服务器端之OICPServer类 ... -
腾讯公司后台服务器经典面试题
2012-01-20 00:42 675腾讯公司后台服务器经 ... -
linux中select()函数分析
2012-01-20 00:42 699linux中select()函数分析 2 ... -
Delphi下的winsock-api 函数(二)
2012-01-20 00:42 848Delphi下的winsock-api 函数(二) 2010 ... -
安卓模拟器手机上网,玩游戏
2012-01-17 00:59 1025安卓模拟器手机上网,玩 ... -
3.1 MFC概述
2012-01-17 00:59 5593.1 MFC概述 2009年12月01 ... -
Virtools:把Virtools文件封装到可执行文件中
2012-01-17 00:59 699Virtools:把Virtools文件封装到可执行文件中 ... -
Windows与Linux共存之重装Windows经历
2012-01-17 00:59 555Windows与Linux共存之重装W ... -
给不会打字的朋友推荐一种鼠标写字的输入法
2012-01-17 00:59 767给不会打字的朋友推荐一种鼠标写字的输入法 2011年05月2 ... -
BusyBox 简化嵌入式 Linux 系统 (转载)
2012-01-15 19:42 526BusyBox 简化嵌入式 Linux 系统 (转载) 20 ... -
摘嵌入式教案2
2012-01-15 19:42 617摘嵌入式教案2 2009年12 ... -
程序工具
2012-01-15 19:42 640程序工具 2010年10月15日 开发(Developm ... -
各种计算机语言的盘点
2012-01-15 19:42 636各种计算机语言的盘点 2010年01月28日 转自:ht ...
相关推荐
非官方touchlib配置手册中文版 原版基于unofficial touchlib reference 此中文版不但完全翻译了原来的英文版,并且根据作者的经验,对某些部分增加了更详细的说明。
Touchlib是一个库,用于创建多点接触交互界面。它能处理红外线的tracking blobs,并向你的程序发送多点触摸事件,如手指按下、手指移动和手指释放等。它包含一个配置程序和少量让你入门的实例,能和大部分类型的网络...
Touchlib是一个库,用于创建多点接触交互界面。它能处理红外线的tracking blobs,并向你的程序发送多点触摸事件,如手指按下、手指移动和手指释放等。它包含一个配置程序和少量让你入门的实例,能和大部分类型的网络...
FLASH的触摸开发包touchlib,多点触摸开发包
多点触摸工具包,利用此软件工具可以自己动手制作多点触摸屏,接上电脑,并设置相关的参数即可实现简易的多点触摸功能。
flash多点触摸 多媒体制作 flash触摸屏程序 进来在研究touchlib,和大家分享一下: 这是一个简单的多点触摸程序,实现对一个...2,touchlib,请参照我的上一篇教程《如何用SVN下载touchlib》 好,准备完毕,开工:
这里就要用到一个名为Touchlib的程序,我们可以下载一个名为MTmini Software Package v1的软件包,它里面包含了开源软件Touchlib、设置程序、各种示例程序,以及相应的教程等等。
#TouchLib 对象和用法###Vertical Slider (TouchLib.VertSlider) 实例化: var vertSlider = new TouchLib . VertSlider ( { //DOM element in which the slider will be created (required) elementId : '...
多点触屏软件CCV,软件使用了opencv和touchlib,封装好了界面,可以矫正网格,发送flash的TUIO消息,很好用。-Multi-touch software CCV, the software uses opencv and touchlib, package good interface, you can ...