samples compilation error

samples compilation error

Environment:
Windows 7 Ultimate 64bit
Windows SDK 7.0
Visual Studio 2008
Intel Media SDK 2.0 GOLD

I tried to compile the H264_encoder source code from the dshow plugin samples.But I get the followingerrors:

1>h264_enc_proppage.obj : error LNK2019:unresolved external symbol "public: static wchar_t * __cdecl CodecPreset::Preset2Str(unsigned int)" (?Preset2Str@CodecPreset@@SAPA_WI@Z)referenced in the function"private: long __thiscall CH264EncPropPage::FillCombos(void)" (?FillCombos@CH264EncPropPage@@AAEJXZ) 1>video_enc_filter.lib(mfx_video_enc_proppage.obj) : error LNK2019:unresolved external symbol "public: __thiscall CBasePropertyPage::CBasePropertyPage(wchar_t const *,struct IUnknown *,int,int)" (??0CBasePropertyPage@@QAE@PB_WPAUIUnknown@@HH@Z)referenced in the function "public: __thiscall CVideoEncPropPage::CVideoEncPropPage(struct IUnknown *)" (??0CVideoEncPropPage@@QAE@PAUIUnknown@@@Z)
1>video_enc_filter.lib(mfx_video_enc_filter.obj) : error LNK2019:unresolved external symbol "public: __thiscall CTransformFilter::CTransformFilter(wchar_t const *,struct IUnknown *,struct _GUID const &)" (??0CTransformFilter@@QAE@PB_WPAUIUnknown@@ABU_GUID@@@Z)referenced in the function"public: __thiscall CEncVideoFilter::CEncVideoFilter(wchar_t *,struct IUnknown *,struct _GUID,long *)" (??0CEncVideoFilter@@QAE@PA_WPAUIUnknown@@U_GUID@@PAJ@Z)
1>video_enc_filter.lib(mfx_video_enc_filter.obj) : error LNK2019:unresolved external symbol "public: __thiscall CTransformOutputPin::CTransformOutputPin(wchar_t const *,class CTransformFilter *,long *,wchar_t const *)" (??0CTransformOutputPin@@QAE@PB_WPAVCTransformFilter@@PAJ0@Z)referenced in the function"public: __thiscall CEncoderOutputPin::CEncoderOutputPin(class CTransformFilter *,long *)" (??0CEncoderOutputPin@@QAE@PAVCTransformFilter@@PAJ@Z)
1>video_enc_filter.lib(mfx_video_enc_filter.obj) : error LNK2019:unresolved external symbol "public: __thiscall CTransformInputPin::CTransformInputPin(wchar_t const *,class CTransformFilter *,long *,wchar_t const *)" (??0CTransformInputPin@@QAE@PB_WPAVCTransformFilter@@PAJ0@Z)referenced in the function"public: __thiscall CEncoderInputPin::CEncoderInputPin(class CTransformFilter *,long *)" (??0CEncoderInputPin@@QAE@PAVCTransformFilter@@PAJ@Z)
1>..\\..\\..\\_build\\Win32\\Debug\\h264_enc_filter.dll : fatal error LNK1120: 5 unresolved externals

any hint to solve it? Thanks!

5 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Building thedirectshow pluginsrequires a few more stepsthan the console samples.

Here is what I did to build this sample (similar steps are in sample_plugins/readme-dshow-plugins.rtf):

1. Install Microsoft Windows SDK
2. Install Media SDK
3. Check that the DSHOW_BASECLASSES_PATH environment variable is set to the BaseClasses directory (under Windows SDK) -- the Media SDK installer should set this if Windows SDK is present.
4. Build the Media SDK DirectShow BaseClasses
5. Starting from the new install, build sample_filters.sln.

I suspect that something in the h264_enc_filter projectis not quite right -- hopefully starting with a new one (after getting DirectShow set up) will get this working for you.

Pleaselet us know if this does not solve the problem.

Regards,

Jeff

Hello Jeff,
Thanks for your quick reply.I've checked the 5 steps you listed above and I think Imissed none.
Here ismy specific procedure:
1.Install Microsoft Windows SDK 7.0
2.Build the DirectShow BaseClasses.(Successfully got strmbasd.lib in the debug folder)
3.Manually set theDSHOW_BASECLASSES_PATH environment variable to the Windows SDK directory which is C:\Program Files\Microsoft SDKs\Windows\v7.0\Samples\multimedia\directshow\baseclasses
4.Build sample_filters.sln(Only build h264_enc_filter). "common,sample_common,utils,video_enc_filter" are built successfully, but "h264_enc_filter" failed.

I tried the steps again but the same situation happened.

Thebuildlog is uploaded here for more information.I wish the Chinese charaters in the log won't bother you much.

Regards,

Patrick

Attachments: 

AttachmentSize
Downloadtext/html BuildLog.htm15.44 KB

Hi Patrick,Could you try cheking if BaseClasses were built with General->CharacterSet=Use Unicode Character Set setting? The error log points that there's a mismatch in character type and MSDK samples are built with Unicode so other libraries that they link to must have same setting.I hope this helps you.Regards,Nina

Hello Nina,
Thank you for reminding me of the character setting.I suddenly realized what has happened as soon as I saw your explaination.The problem has solved.Thank you!

Regards,

Patrick

Leave a Comment

Please sign in to add a comment. Not a member? Join today