2014-12-04 28 views
0

我有一个程序,我没有问题,它编译我的电脑上,我有哪些运行Windows 7 32位。要运行该程序,我必须使用一个库,其中有.h和.lib文件。LNK2019更换电脑

我需要对程序做一些小改动,只是改变帮助屏幕上的一些文本输出,但我是从另一台运行Windows 7 64位的计算机上进行的。当我尝试编译程序时,如果不对代码进行任何更改,只需将文件从Dropbox复制到新计算机上,我就可以从我调用的某些函数中获得“LNK2019:无法解析的外部符号...”图书馆。我正在使用Qt Creator,并调用微软的Visual Studio编译器(我在两台计算机上都使用相同的,当然除了一个是x64和另一个x86)。

有没有人在过去遇到类似这个问题?如果是这样,你做了什么来解决它?

+0

有极有可能您的问题一个合适的答案在这里:http://stackoverflow.com/questions/12573816 /什么是一个未定义的参考未解决的外部符号错误和怎么办我 - 修复 – 2014-12-04 22:21:26

回答

0

几乎可以肯定你的问题是你的make文件/构建系统。

您要么是针对64位平台上不存在的32位标准库。

,或者你从其他系统复制的32位库,并链接到64个库在新系统上

+0

是否有办法强制它使用32位库时,即使它是在一个64位系统上编译的? – user3830784 2014-12-04 22:28:17

+0

如果列出了实际的链接错误,我们的问题会更加清晰。例如。它会告诉我们很多错误来自c标准库的错误位数。 – 2014-12-04 22:33:03

+0

您通常可以在64位系统上使用32位库 - 但您必须特别要求它们,并且在某些情况下,您可能还必须下载特殊库。通常使用标准系统库和修改程序会更好。 – 2014-12-04 22:34:08