Я выполняю следующий код на моем компьютере с Windows10 с API версии 1.19 Intel Media SDK.
#include<stdio.h>
#include"mfxvideo++.h"
void main() {
printf("this is a new program using intel media sdk");
mfxSession SWsess;
mfxVersion SWver = {0,1}, ver;
mfxStatus sts;
sts = MFXInit(MFX_IMPL_SOFTWARE, &SWver, &SWsess);
if (MFX_ERR_NONE == sts) {
MFXQueryVersion(SWsess, &ver);
printf("Implementation version: %d.%d and API version: %d.%d", SWver.Major, SWver.Minor, ver.Major, ver.Minor);
}
MFXClose(SWsess);
getchar();
}
Я сделал проект в Visual Studio 2015, но получил следующие ошибки
Код ошибки серьезности
Описание
проект
Путь файла
Линия программы
Ошибки были написаны в вышеуказанном формате.
Error LNK1120
2 unresolved externals
ScreenCapture
~\Visual Studio\ScreenCapture\x64\Debug\ScreenCapture.exe
1
Error LNK2019
unresolved external symbol __imp_printf referenced in function main
ScreenCapture
~\Visual Studio\ScreenCapture\ScreenCapture\main.obj
1
Error LNK2019
unresolved external symbol swscanf_s referenced in function "private: bool __cdecl MFX::MFXPluginsInFS::ParseKVPair(wchar_t *,wchar_t *,class MFX::PluginDescriptionRecord &)" (?ParseKVPair@MFXPluginsInFS@MFX@@AEAA_NPEA_W0AEAVPluginDescriptionRecord@2@@Z)
ScreenCapture
~\Visual Studio\ScreenCapture\ScreenCapture\libmfx.lib(mfx_plugin_hive.obj)
1
Warning LNK4098
defaultlib 'LIBCMT' conflicts with use of other libs; use /NODEFAULTLIB:library
ScreenCapture
~\Visual Studio\ScreenCapture\ScreenCapture\LINK
1
Однако в Visual Studio 2012 вышеупомянутый код работает нормально. Посоветуйте, пожалуйста, что мне нужно сделать, чтобы обновить мой проект до Visual Studio 2015?
Я столкнулся с LNK2019 в Visual Studio 2017RC (Обратитесь сюда) поэтому я вернулся к Visual Studio 2015 и 2012. Решения, доступные для ошибок на этом или других форумах, до сих пор не работали для меня. Для предупреждения LNK4098, я не мог сделать вывод, какие библиотеки игнорировать.
VS 2015 и VS 2017 используют Универсальный ЭЛТ который не двоичен или не совместим со старыми реализациями Visual Studio CRT. Вообще говоря, CRT не совместимы между основной версией компилятора.
IOW: эта версия Intel Media SDK не поддерживает VS 2015.
Других решений пока нет …