2011-10-10 132 views
7

我很清楚这个板子上已经出现了许多类似的问题,但是没有一个解决方案对我有帮助。程序无法启动,因为缺少* .dll - MinGW,Eclipse,Windows 7

我试图让Eclipse CDT与Windows 7 Service Pack 1上的MinGW toolchain一起运行。我已经在Windows XP上执行了这个操作,并且认为相同的过程会使其在Windows 7上顺利运行,但似乎我错了;)

从自动安装程序安装MinGW(以防万一我安装了比我需要的东西更多的东西),并将C:/ MinGW/bin添加到我的PATH环境变量中,我尝试编译一个简单的Hello ,世界!程序。 Eclipse没有给我任何错误,但它不想在控制台窗口中输出任何输出。警告,我试图运行Eclipse以外的可执行文件,并得到错误

“程序无法启动,因为libstdC++ - 6.dll丢失”。

奇怪的是,这个DLL是在C:/ minGW/bin目录中,所以PATH变量应该'找到'它 - 但它不。将dll复制到带有可执行文件的目录会有所帮助,但这显然是一个短期解决方案,我宁愿有一个更“正常”的解决方案。

让我的问题与我在本主板上注意到的其他问题有所不同的是,例如,Eclipse没有发现我的PATH变量有任何错误(通常它会这样做,如果MinGW并未包含在Path变量中),除了所需的dll是他们应该在的位置,但似乎我的Windows找不到它们。

+0

我假设你已经检查过它是否是“真实”文件而不是符号链接? –

+0

它们是真正的* .dll文件 - 正如我所说的那样,将它们复制到可执行文件的文件夹中有诀窍,但是我寻求一种更“优雅”的解决方案,并且一个独立于运行程序的机器。 – user988066

+1

只是出于好奇,你是否注销并重新开始。我们之前有这个问题,并注销/帮助 –

回答

5

“真正的”解决方案确实是在本地复制DLL。运送您的EXE时,您必须运送该dll。

+0

好吧,这似乎不必要的复杂。另外,我在Windows 7上看到Eclipse的实现完美无缺地运行 - 因此,我的系统有什么问题? – user988066

+3

您可以将-static传递给gcc。 – Joshua

+1

从外行的角度来看,这意味着......?我在Eclipse中怎么做? – user988066

相关问题