有一个废弃的项目,可以在32位版本中正确构建,但是我需要它的64位版本。我试图在Visual Studio中将项目设置更改为x64,但是当我单击build时,出现很多错误。这是visual studio files。这是有关project的更多信息。我没有VS和c ++的经验。
这是一个DLL,使用libmysql.dll在MT5平台和MySQL之间建立连接。我想使用MT5在MySQL中读写数据。
如果您能帮助我将其转换为64位,则不能将32位版本加载到MT5。
这是前5个错误:
1>MQLMySQL.obj : error LNK2019: unresolved external symbol mysql_num_rows referenced in function "int __cdecl cMySqlCursorRows(int)" (?cMySqlCursorRows@@YAHH@Z) 1>MQLMySQL.obj : error LNK2019: unresolved external symbol mysql_num_fields referenced in function "wchar_t * __cdecl cMySqlGetRowField(int,unsigned int)" (?cMySqlGetRowField@@YAPEA_WHI@Z) 1>MQLMySQL.obj : error LNK2019: unresolved external symbol mysql_errno referenced in function "bool __cdecl MySqlExecute(int,wchar_t *)" (?MySqlExecute@@YA_NHPEA_W@Z) 1>MQLMySQL.obj : error LNK2019: unresolved external symbol mysql_error referenced in function "bool __cdecl MySqlExecute(int,wchar_t *)" (?MySqlExecute@@YA_NHPEA_W@Z) 1>MQLMySQL.obj : error LNK2019: unresolved external symbol mysql_init referenced in function "int __cdecl cMySqlConnect(wchar_t *,wchar_t *,wchar_t *,wchar_t *,int,wchar_t *,int)" (?cMySqlConnect@@YAHPEA_W000H0H@Z) 1>MQLMySQL.obj : error LNK2019: unresolved external symbol mysql_real_connect referenced in function "int __cdecl cMySqlConnect(wchar_t *,wchar_t *,wchar_t *,wchar_t *,int,wchar_t *,int)" (?cMySqlConnect@@YAHPEA_W000H0H@Z)
答案 0 :(得分:0)
从您遇到的前5个错误中,它看起来像是链接器问题。大多数编译语言将源代码(c ++)编译为目标文件,然后将其与现有库链接。如果源代码可以编译,但是您无法链接到外部库(例如,未安装它们),则将收到如您所描述的错误。
您是否需要引用一个外部库,或者所有源文件都以它们可以相互引用的方式进行组织?