Home › Forums › Legacy SDKs › Gaze SDK C Api Windows 64bit fail to link
Tagged: gaze sdk
- This topic has 1 reply, 1 voice, and was last updated 8 years, 7 months ago by
Xuezhong Wang.
- AuthorPosts
- 30/07/2014 at 14:51 #1447
Xuezhong Wang
Participanthi,
I found that the samples come with the SDK is actually for 32-bit as it’s using the 32 bit lib file in the settings. However, after I changed that to 64 bit version, it still fails in link stage. error reported are:
=======================================================================
1>EyeTrackingEngine.obj : error LNK2019: unresolved external symbol __imp__tobiigaze_destroy referenced in function “private: void __thiscall CEyeTrackingEngine::Reset(void)” ([email protected]@@AAEXXZ)
1>EyeTrackingEngine.obj : error LNK2019: unresolved external symbol __imp__tobiigaze_register_error_callback referenced in function “private: bool __thiscall CEyeTrackingEngine::InitializeEyeTracker(void)” ([email protected]@@AAE_NXZ)
1>EyeTrackingEngine.obj : error LNK2019: unresolved external symbol __imp__tobiigaze_create referenced in function “private: bool __thiscall CEyeTrackingEngine::InitializeEyeTracker(void)” ([email protected]@@AAE_NXZ)
1>EyeTrackingEngine.obj : error LNK2019: unresolved external symbol __imp__tobiigaze_get_connected_eye_tracker referenced in function “private: bool __thiscall CEyeTrackingEngine::InitializeEyeTracker(void)” ([email protected]@@AAE_NXZ)
1>EyeTrackingEngine.obj : error LNK2019: unresolved external symbol __imp__tobiigaze_connect_async referenced in function “private: void __thiscall CEyeTrackingEngine::BeginConnectEyeTracker(void)” ([email protected][email protected]@AAEXXZ)
1>EyeTrackingEngine.obj : error LNK2019: unresolved external symbol __imp__tobiigaze_break_event_loop referenced in function “private: void __thiscall CEyeTrackingEngine::StopEventLoop(void)” ([email protected]@@AAEXXZ)
1>EyeTrackingEngine.obj : error LNK2019: unresolved external symbol __imp__tobiigaze_start_tracking_async referenced in function “private: static void __cdecl CEyeTrackingEngine::OnConnectFinished(enum tobiigaze_error_code,void *)” ([email protected]@@[email protected]@[email protected])
1>EyeTrackingEngine.obj : error LNK2019: unresolved external symbol __imp__tobiigaze_run_event_loop referenced in function “private: static unsigned long __stdcall CEyeTrackingEngine::EventLoop(void *)” ([email protected]@@[email protected])
=======================================================================
I compared the two lib files (32 bit and 64 bit) and found that there is a difference in the name of those symbols, for example:Version : 0
Machine : 14C (x86)
TimeDateStamp: 53C78301 Thu Jul 17 04:02:09 2014
SizeOfData : 00000037
DLL name : TobiiGazeCore32.dll
Symbol name : _tobiigaze_register_error_callback
Type : code
Name type : no prefix
Hint : 58
Name : tobiigaze_register_error_callbackVersion : 0
Machine : 8664 (x64)
TimeDateStamp: 53C782AE Thu Jul 17 04:00:46 2014
SizeOfData : 00000036
DLL name : TobiiGazeCore64.dll
Symbol name : tobiigaze_register_error_callback
Type : code
Name type : name
Hint : 58
Name : tobiigaze_register_error_callbackThere is an additional underscore for the symbols in 32 bit lib file. And the 32 bit samples compile with no problem.
Is there something I missed in setting or “TobiiGazeCore64.lib” is not correct?
30/07/2014 at 15:11 #1449Xuezhong Wang
ParticipantAlright, the lib file is ok. I forget to change the build platform to x64.
- AuthorPosts
- You must be logged in to reply to this topic.