linking problems
Hi,
I'm tryng to compile a program that uses directshow, and altough it compiles just fine, it has problems linking it.
I think it misses a lib..,
The link errors are of the kind :
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseVideoRenderer::SetSink(struct IQualityControl *)" (?SetSink@CBaseVideoRenderer@@UAGJPAUIQualityControl@@@Z)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseVideoRenderer::Notify(struct IBaseFilter *,struct tagQuality)" (?Notify@CBaseVideoRenderer@@UAGJPAUIBaseFilter@@UtagQuality@@@Z)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseVideoRenderer::get_DevSyncOffset(int *)" (?get_DevSyncOffset@CBaseVideoRenderer@@UAGJPAH@Z)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseVideoRenderer::get_AvgSyncOffset(int *)" (?get_AvgSyncOffset@CBaseVideoRenderer@@UAGJPAH@Z)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseVideoRenderer::get_Jitter(int *)" (?get_Jitter@CBaseVideoRenderer@@UAGJPAH@Z)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseVideoRenderer::get_AvgFrameRate(int *)" (?get_AvgFrameRate@CBaseVideoRenderer@@UAGJPAH@Z)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseVideoRenderer::get_FramesDrawn(int *)" (?get_FramesDrawn@CBaseVideoRenderer@@UAGJPAH@Z)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual long __stdcall CBaseVideoRenderer::get_FramesDroppedInRenderer(int *)" (?get_FramesDroppedInRenderer@CBaseVideoRenderer@@UAGJPAH@Z)
anyone knows what should be linked here ?
thanks,
Here is an entry in some german forum, they basically say:
The .lib is not provided with the SDK, but its sources and workspaces are in "..\Samples\C++\DirectShow\BaseClasses" and have to be compiled. That should create a file called "strmbasd.lib" which you can link with your program.
hth
The .lib is not provided with the SDK, but its sources and workspaces are in "..\Samples\C++\DirectShow\BaseClasses" and have to be compiled. That should create a file called "strmbasd.lib" which you can link with your program.
hth
Thanks a lot :),
It brought down the 69 link errors to only 2..,
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual unsigned long __stdcall CBaseFilter::NonDelegatingRelease(void)" (?NonDelegatingRelease@CBaseFilter@@UAGKXZ)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: __thiscall CBaseVideoRenderer::CBaseVideoRenderer(struct _GUID const &,char *,struct IUnknown *,long *)" (??0CBaseVideoRenderer@@QAE@ABU_GUID@@PADPAUIUnknown@@PAJ@Z)
Debug/video_test.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.
They seem to come from the same place, and altought the texture3d and texture3d9 build correctly, i can't build it here..,
Something that i may be missing ?
thanks,
It brought down the 69 link errors to only 2..,
DShowTextures.obj : error LNK2001: unresolved external symbol "public: virtual unsigned long __stdcall CBaseFilter::NonDelegatingRelease(void)" (?NonDelegatingRelease@CBaseFilter@@UAGKXZ)
DShowTextures.obj : error LNK2001: unresolved external symbol "public: __thiscall CBaseVideoRenderer::CBaseVideoRenderer(struct _GUID const &,char *,struct IUnknown *,long *)" (??0CBaseVideoRenderer@@QAE@ABU_GUID@@PADPAUIUnknown@@PAJ@Z)
Debug/video_test.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.
They seem to come from the same place, and altought the texture3d and texture3d9 build correctly, i can't build it here..,
Something that i may be missing ?
thanks,
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement