编译错误error LNK2019: unresolved external symbol,求解

pomoq 2009-06-25 03:17:37
今天编译一个工程,其中的一个mediastream工程(用vs2008以debug方式编译)总是编译不过去,该工程依赖DirectShow的BaseClasses.

我用vs6.0以debug方式编译了BaseClasses.然后把下面的三个路径
D:\Program Files\DXSDK\Include
D:\Program Files\DXSDK\Samples\C++\DirectShow\BaseClasses
D:\Program Files\DXSDK\Samples\C++\DirectShow\BaseClasses\Debug (strmbasd.lib路径)
分别添加到了mediastream对应的属性页中.

但编译mediastream时出现输出下面的错误
1>Generating Code...
1>Linking...
1>alaw.obj : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/OPT:ICF' specification
1> Creating library D:\Source\Source\SipPhoneWorkspace\Debug\mediastreamer2.lib and object D:\Source\Source\SipPhoneWorkspace\Debug\mediastreamer2.exp
1>dxfilter.obj : error LNK2019: unresolved external symbol "public: __thiscall CTransInPlaceFilter::CTransInPlaceFilter(wchar_t *,struct IUnknown *,struct _GUID const &,long *,bool)" (??0CTransInPlaceFilter@@QAE@PA_WPAUIUnknown@@ABU_GUID@@PAJ_N@Z) referenced in function "public: __thiscall CDXFilter::CDXFilter(struct IUnknown *,long *,int)" (??0CDXFilter@@QAE@PAUIUnknown@@PAJH@Z)
1>dxfilter.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CTransformFilter::FindPin(wchar_t const *,struct IPin * *)" (?FindPin@CTransformFilter@@UAGJPB_WPAPAUIPin@@@Z)
1>dxfilter.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseFilter::JoinFilterGraph(struct IFilterGraph *,wchar_t const *)" (?JoinFilterGraph@CBaseFilter@@UAGJPAUIFilterGraph@@PB_W@Z)
1>dxfilter.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseFilter::QueryVendorInfo(wchar_t * *)" (?QueryVendorInfo@CBaseFilter@@UAGJPAPA_W@Z)
1>dxfilter.obj : error LNK2019: unresolved external symbol "void __stdcall DbgBreakPoint(wchar_t const *,wchar_t const *,int)" (?DbgBreakPoint@@YGXPB_W0H@Z) referenced in function "public: virtual long __thiscall CTransInPlaceFilter::GetMediaType(int,class CMediaType *)" (?GetMediaType@CTransInPlaceFilter@@UAEJHPAVCMediaType@@@Z)
1>dxfilter.obj : error LNK2019: unresolved external symbol "public: __thiscall CTransInPlaceInputPin::CTransInPlaceInputPin(wchar_t *,class CTransInPlaceFilter *,long *,wchar_t const *)" (??0CTransInPlaceInputPin@@QAE@PA_WPAVCTransInPlaceFilter@@PAJPB_W@Z) referenced in function "public: __thiscall CDXFilterInPin::CDXFilterInPin(class CTransInPlaceFilter *,long *)" (??0CDXFilterInPin@@QAE@PAVCTransInPlaceFilter@@PAJ@Z)
1>dxfilter.obj : error LNK2019: unresolved external symbol "void __stdcall DbgAssert(wchar_t const *,wchar_t const *,int)" (?DbgAssert@@YGXPB_W0H@Z) referenced in function "public: struct tagAM_SAMPLE2_PROPERTIES * __thiscall CBaseInputPin::SampleProps(void)" (?SampleProps@CBaseInputPin@@QAEPAUtagAM_SAMPLE2_PROPERTIES@@XZ)
1>dxfilter.obj : error LNK2019: unresolved external symbol "public: __thiscall CMemAllocator::CMemAllocator(wchar_t *,struct IUnknown *,long *)" (??0CMemAllocator@@QAE@PA_WPAUIUnknown@@PAJ@Z) referenced in function "public: __thiscall CDXFilterAllocator::CDXFilterAllocator(class CDXFilterInPin *,long *)" (??0CDXFilterAllocator@@QAE@PAVCDXFilterInPin@@PAJ@Z)
1>dxfilter.obj : error LNK2019: unresolved external symbol "public: __thiscall CMediaSample::CMediaSample(wchar_t *,class CBaseAllocator *,long *,unsigned char *,long)" (??0CMediaSample@@QAE@PA_WPAVCBaseAllocator@@PAJPAEJ@Z) referenced in function "public: virtual long __thiscall CDXFilterAllocator::Alloc(void)" (?Alloc@CDXFilterAllocator@@UAEJXZ)
1>D:\Source\Source\SipPhoneWorkspace\Debug\mediastreamer2.dll : fatal error LNK1120: 9 unresolved externals
1>Build log was saved at "file://d:\Source\Source\Common\mediastreamer2\build\wince\Debug\BuildLog.htm"
1>mediastreamer2 - 10 error(s), 4 warning(s)
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========


请各位大侠支招!!!
...全文
22369 31 打赏 收藏 转发到动态 举报
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiao_qian_2013 2012-09-21
  • 打赏
  • 举报
回复

我也遇到这样问题了,不过,我后来发现是我自己定义的几个工具类忘记加入工程了啊~


由此觉得可能是调用库出了问题。可以重新编译一下库,或者直接加入源码,试一试。
powerzone 2012-07-23
  • 打赏
  • 举报
回复
各人的情况不一样,我的也是Link2019,但错误就不一样了
fjhsdm 2012-06-11
  • 打赏
  • 举报
回复
没解决问题,郁闷
shitagain 2012-05-23
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

TMD,都是些鸟人回答,不会就是不会,不要讲些垃圾,让人恶心,猥琐。
[/Quote]

U are Right!
pop1210 2011-11-18
  • 打赏
  • 举报
回复
[Quote=引用 25 楼 q200824960 的回复:]

引用 6 楼 plutus_lee 的回复:

TMD,都是些鸟人回答,不会就是不会,不要讲些垃圾,让人恶心,猥琐。



我是路人,但我从见过你这么没素质的鸟人。。。 TMD。
[/Quote]

大家都好有爱啊 - -
wxi_hello 2011-11-14
  • 打赏
  • 举报
回复
我也遇到了这种错误,O(∩_∩)O谢谢。我是不小心把工程中某个文件删除了,把该添加的文件加到工程里面就可以了。
q200824960 2011-10-31
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 plutus_lee 的回复:]

TMD,都是些鸟人回答,不会就是不会,不要讲些垃圾,让人恶心,猥琐。
[/Quote]


我是路人,但我从见过你这么没素质的鸟人。。。 TMD。
theseahd 2011-06-20
  • 打赏
  • 举报
回复
正解!!!!!
delta_2013 2011-02-24
  • 打赏
  • 举报
回复
18楼牛啊, 我的问题也是这样,编译时,解决了:)
wbf402 2011-01-27
  • 打赏
  • 举报
回复
为什么还要我回复才能看
darkeye0 2011-01-06
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 hatemath 的回复:]

对我来说,是用这种方式搞定的:
built the base classes with MBCS you must build the example in the same way.
(Configuration Properties->General->Character Set)

不知对你有没有用
[/Quote]

同意这个
startstartsvip 2011-01-03
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 hatemath 的回复:]
对我来说,是用这种方式搞定的:
built the base classes with MBCS you must build the example in the same way.
(Configuration Properties->General->Character Set)

不知对你有没有用
[/Quote]

正解
wencan2010 2010-11-21
  • 打赏
  • 举报
回复
我正遇到這個問題啊
HateMath 2010-11-03
  • 打赏
  • 举报
回复
对我来说,是用这种方式搞定的:
built the base classes with MBCS you must build the example in the same way.
(Configuration Properties->General->Character Set)

不知对你有没有用
driverSir 2010-10-25
  • 打赏
  • 举报
回复
额弄一星期了,也没搞定,系统函数一直说没有,崩溃。
newencn 2010-08-22
  • 打赏
  • 举报
回复
解决方法:在cpp文件Include后添加 #pragma comment(lib,"ws2_32.lib")

#include “***”

#pragma comment(lib,"ws2_32.lib")
myth518 2010-08-09
  • 打赏
  • 举报
回复
看看什么问题
airry 2010-07-26
  • 打赏
  • 举报
回复
把BaseClasses重新编译一次,注意编译的设置要和你使用它的工程一致,比如是否采用静态的MFC库等。
skyjsq 2010-07-15
  • 打赏
  • 举报
回复
诡异的问题,偶也遇到了
jackinsea 2010-07-12
  • 打赏
  • 举报
回复
ding
加载更多回复(11)

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧