2013-03-13 36 views
0

我刚刚在我的新电脑上安装了Codeblocks,现在我试图让一个名为CML的库运行(它来自学校的一个库,它不是很好),但我得到一个奇怪的错误,当我尝试运行一些非常基本的示例代码。它不是Devcpp中的代码本身,它编译得很好。未定义的引用'睡眠'

的错误:

d:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\..\..\..\libcml.a(video.o):video.c|| undefined reference to sleep'|

有谁知道我可以解决这一问题?

+0

你可以发布一个导致错误的代码的小例子吗? – gustavodidomenico 2013-03-13 21:49:11

+1

MinGW(或更确切地说Windows)没有'睡眠'功能,只有'睡眠'。错字? – Damon 2013-03-13 21:49:55

+0

不,我甚至不使用睡眠。 – Timtim32 2013-03-13 21:52:00

回答

0

Damon是正确的WinAPI只提供一个称为睡眠的功能。该错误看起来像链接程序无法在您要链接的库中找到此符号。

第一个猜想是,你必须

-lWinmm 

添加到您的链接器命令行。不过,据我记得Devcpp IDE默认应该添加这个库...

+0

这将是'-lkernel32',而不是'-lwinmm'(是的,这是默认设置),但这仍然不能解决睡眠和睡眠问题不同的符号。 – Damon 2013-03-13 22:07:46

+0

-lWinmm没有这样做,但我知道devcpp使用mingw 3.4.2和CodeBlocks使用4.7.2也许这就是问题所在? – Timtim32 2013-03-13 22:08:40