2017-10-09 17 views
2

J'ai téléchargé Segger simulation of emWin mais il ne sera pas compilé sur Visual Studio 2015 Express. Les problèmes de liaison suivants se sont produits:Compilation de la simulation emWin sur un nouveau Visual Studio

1>libcmtd.lib(_init_.obj) : error LNK2019: unresolved external symbol __CrtDbgReport referenced in function __CRT_RTC_INIT 
1>libcmtd.lib(_init_.obj) : error LNK2019: unresolved external symbol __CrtDbgReportW referenced in function __CRT_RTC_INITW 
1>libcmtd.lib(_error_.obj) : error LNK2019: unresolved external symbol ___stdio_common_vsprintf_s referenced in function __vsprintf_s_l 
1>libcmtd.lib(_error_.obj) : error LNK2019: unresolved external symbol __except_handler4 referenced in function "int __cdecl DebuggerProbe(unsigned long)" ([email protected]@[email protected]) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2001: unresolved external symbol __except_handler4 
1>libcmtd.lib(utility.obj) : error LNK2001: unresolved external symbol __except_handler4 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __seh_filter_exe referenced in function "int __cdecl __scrt_common_main_seh(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __set_app_type referenced in function "int __cdecl pre_c_initialization(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol ___setusermatherr referenced in function "int __cdecl pre_c_initialization(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __configure_narrow_argv referenced in function "public: static int __cdecl __scrt_narrow_argv_policy::configure_argv(void)" ([email protected][email protected]@SAHXZ) 
1>libcmtd.lib(utility.obj) : error LNK2001: unresolved external symbol __configure_narrow_argv 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __initialize_narrow_environment referenced in function "void __cdecl initialize_environment(void)" ([email protected]@YAXXZ) 
1>libcmtd.lib(utility.obj) : error LNK2001: unresolved external symbol __initialize_narrow_environment 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __get_narrow_winmain_command_line referenced in function "int __cdecl invoke_main(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __initterm referenced in function "int __cdecl __scrt_common_main_seh(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __initterm_e referenced in function "int __cdecl __scrt_common_main_seh(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol _exit referenced in function "int __cdecl __scrt_common_main_seh(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __exit referenced in function "int __cdecl __scrt_common_main_seh(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __set_fmode referenced in function "int __cdecl pre_c_initialization(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __cexit referenced in function "int __cdecl __scrt_common_main_seh(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(utility.obj) : error LNK2001: unresolved external symbol __cexit 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __c_exit referenced in function "int __cdecl __scrt_common_main_seh(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __register_thread_local_exe_atexit_callback referenced in function "int __cdecl __scrt_common_main_seh(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __configthreadlocale referenced in function "int __cdecl pre_c_initialization(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol __set_new_mode referenced in function "void __cdecl pre_cpp_initialization(void)" ([email protected]@YAXXZ) 
1>libcmtd.lib(exe_winmain.obj) : error LNK2019: unresolved external symbol ___p__commode referenced in function "int __cdecl pre_c_initialization(void)" ([email protected]@YAHXZ) 
1>libcmtd.lib(_pdblkup_.obj) : error LNK2019: unresolved external symbol __wmakepath_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned int)" ([email protected]@[email protected]) 
1>libcmtd.lib(_pdblkup_.obj) : error LNK2019: unresolved external symbol __wsplitpath_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned int)" ([email protected]@[email protected]) 
1>libcmtd.lib(_pdblkup_.obj) : error LNK2019: unresolved external symbol _wcscpy_s referenced in function "int __cdecl GetPdbDllPathFromFilePath(wchar_t const *,wchar_t *,unsigned int)" ([email protected]@[email protected]) 
1>libcmtd.lib(_pdblkup_.obj) : error LNK2019: unresolved external symbol ___vcrt_GetModuleFileNameW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" ([email protected]@[email protected]@XZ) 
1>libcmtd.lib(_pdblkup_.obj) : error LNK2019: unresolved external symbol ___vcrt_GetModuleHandleW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" ([email protected]@[email protected]@XZ) 
1>libcmtd.lib(_pdblkup_.obj) : error LNK2019: unresolved external symbol ___vcrt_LoadLibraryExW referenced in function "struct HINSTANCE__ * __cdecl GetPdbDll(void)" ([email protected]@[email protected]@XZ) 
1>libcmtd.lib(utility.obj) : error LNK2019: unresolved external symbol __seh_filter_dll referenced in function ___scrt_dllmain_exception_filter 
1>libcmtd.lib(utility.obj) : error LNK2019: unresolved external symbol __initialize_onexit_table referenced in function ___scrt_initialize_onexit_tables 
1>libcmtd.lib(utility.obj) : error LNK2019: unresolved external symbol __register_onexit_function referenced in function __onexit 
1>libcmtd.lib(utility.obj) : error LNK2019: unresolved external symbol __execute_onexit_table referenced in function ___scrt_dllmain_uninitialize_c 
1>libcmtd.lib(utility.obj) : error LNK2019: unresolved external symbol __crt_atexit referenced in function __onexit 
1>libcmtd.lib(utility.obj) : error LNK2019: unresolved external symbol __crt_at_quick_exit referenced in function _at_quick_exit 
1>libcmtd.lib(tncleanup.obj) : error LNK2019: unresolved external symbol ___std_type_info_destroy_list referenced in function "void __cdecl __scrt_uninitialize_type_info(void)" ([email protected]@YAXXZ) 
1>libcmtd.lib(default_precision.obj) : error LNK2019: unresolved external symbol __controlfp_s referenced in function __initialize_default_precision 
1>libcmtd.lib(utility_desktop.obj) : error LNK2019: unresolved external symbol _terminate referenced in function [email protected] 
1>libcmtd.lib(utility_desktop.obj) : error LNK2019: unresolved external symbol _memset referenced in function ___scrt_fastfail 
1>GUI.lib(GUIDRV_Win32.OBJ) : error LNK2001: unresolved external symbol _memset 
1>GUI.lib(GUIDEV_UsageBM.OBJ) : error LNK2001: unresolved external symbol _memset 
1>GUI.lib(WM_Motion.OBJ) : error LNK2019: unresolved external symbol _abs referenced in function __ExecMotion 
1>GUI.lib(SWIPELIST.OBJ) : error LNK2019: unresolved external symbol _strlen referenced in function _SWIPELIST__CalcItemSize 
1>GUI.lib(GUI_ErrorOut.OBJ) : error LNK2001: unresolved external symbol _strlen 
1>GUI.lib(GUI_Warn.OBJ) : error LNK2001: unresolved external symbol _strlen 
1>GUI.lib(GUIDEV_32.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUI_Realloc.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUI_ALLOC_AllocInit.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUI_ARRAY.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(WM_UserData.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUIDEV_8.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUIDEV_16.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(SWIPELIST.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUI_Alloc.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUI_SetAlpha.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUIDEV_StaticDevices.OBJ) : error LNK2001: unresolved external symbol _memcpy 
1>GUI.lib(GUI_Alloc.OBJ) : error LNK2019: unresolved external symbol _memmove referenced in function __RemoveHoles 
1>GUISim.lib(SIM_GetRegions.OBJ) : error LNK2001: unresolved external symbol _memmove 
1>GUISim.lib(SIM_GUI.OBJ) : error LNK2019: unresolved external symbol [email protected] referenced in function _SIM_GUI_Init 
1>GUISim.lib(SIM_GUI_App.OBJ) : error LNK2019: unresolved external symbol __ftol referenced in function [email protected] 
1>GUISim.lib(SIM_GUI_App.OBJ) : error LNK2019: unresolved external symbol _sprintf referenced in function [email protected] 
1>GUISim.lib(LCDSIM.OBJ) : error LNK2001: unresolved external symbol _sprintf 
1>GUISim.lib(SIM_GUI_Log.OBJ) : error LNK2001: unresolved external symbol _sprintf 
1>GUISim.lib(SIM_GetRegions.OBJ) : error LNK2019: unresolved external symbol _free referenced in function __AddRegion 
1>GUISim.lib(SIM_GetRegions.OBJ) : error LNK2019: unresolved external symbol _calloc referenced in function __AddRegion 
1>GUI.lib(GUI_MOUSE.OBJ) : error LNK2019: unresolved external symbol _memcmp referenced in function _GUI_MOUSE_StoreState 
1>GUI.lib(GUI_TOUCH.OBJ) : error LNK2001: unresolved external symbol _memcmp 

Comme Visual Studio devait « recibler la solution », je voulais savoir ce qui doit être fait comme il a converti le projet (à tort) à partir de Visual Studio C++ v6.0 (tout à fait vieux).

Répondre

2

Après avoir contacté le soutien Segger, on m'a dit que sur v5.40 ils ont inclus un guide sur la mise à jour du projet à MSVC 2015/2017:

Make sure the selected Windows SDK is installed: 
Properties -> Configuration Properties -> General -> Windows SDK Version. 

1. Right-Click on the Project (e.g. SimulationTrial) -> Properties 
2 Set Configuration to "All Configurations" 
3. Goto Configuration Properties -> Linker -> Input. 
4. Add under Additional Dependencies: "legacy_stdio_definitions.lib" 
5. Set Ignore All Default Libraries: "No" 
6. Set Ignore Specific Default Libraries: "LIBC.lib;LIBCMTD.lib" 
7. Goto Configuration Properties -> Linker -> Advanced 
8. Set Image Has Safe Exception Handlers:"No (/SAFESEH:NO)" 
9. Click "OK"-Button. 

Il a travaillé pour moi comme prévu!