• 6513阅读
  • 5回复

请教问题 [复制链接]

上一主题 下一主题
离线jully
 
只看楼主 倒序阅读 楼主  发表于: 2012-09-24
关键词: QTCore64位系统
我现在有一个C++项目工程,是在32位XP系统上编写的,应用到了QT/4.5.1版本的dll、lib等文件,程序中调用了QtCore4.lib和QtXml4.lib文件。
现在需要把程序迁移到64位XP系统上,出现了很多问题,主要是链接外部库的问题。请问这些QT文件,比如QtCore4.dll、QtXml4.dll、QtCored4.dll、QtXmld4.dll等,都要重新编译成64位的吗?那怎么编译64位的QT文件,请大家指点,谢谢!
离线ppdayz

只看该作者 1楼 发表于: 2012-09-24
不用重新编译~
离线jully
只看该作者 2楼 发表于: 2012-09-24
那迁移到64位上出现下面这些错误时怎么回事呢?
2>CompassDataManager.obj : error LNK2019: unresolved external symbol "public: static class std::vector<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > > > __cdecl CUMRIOUtil::GetAllCompassDataGivenType(class IUMRComponent *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?GetAllCompassDataGivenType@CUMRIOUtil@@SA?AV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@PEAVIUMRComponent@@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@3@@Z) referenced in function "public: bool __cdecl CCompassDataManager::WriteNameList2TempFile(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?WriteNameList2TempFile@CCompassDataManager@@QEAA_NAEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z)
4>CATIAWriter.obj : error LNK2019: unresolved external symbol "public: static class IUMRComponent * __cdecl CUMRIOUtil::GetFEMDataBlockGivenName(class IUMRComponent *,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (?GetFEMDataBlockGivenName@CUMRIOUtil@@SAPEAVIUMRComponent@@PEAV2@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "public: bool __cdecl CCATIAWriter::Write(void)" (?Write@CCATIAWriter@@QEAA_NXZ)
4>CATIAWriter.obj : error LNK2019: unresolved external symbol "bool __cdecl createUMRio(class IUMRio * *)" (?createUMRio@@YA_NPEAPEAVIUMRio@@@Z) referenced in function "private: bool __cdecl CCATIAWriter::InitUmrIO(void)" (?InitUmrIO@CCATIAWriter@@AEAA_NXZ)
、、、
离线jully
只看该作者 3楼 发表于: 2012-09-24
QtCore4.lib(QtCore4.dll) : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'

上面是编译引用Qtcore4.dll工程出现的错误。
离线jully
只看该作者 4楼 发表于: 2012-09-26
已解决
离线小鸟一只
只看该作者 5楼 发表于: 2012-12-17
楼主,请将解决办法跟过程贴出来啊,好让大家一起学习一下哈.谢谢!
快速回复
限100 字节
 
上一个 下一个