2013-10-20 42 views
0

我只是想打印连接的MIDI输入量。我在做什么错了?C++对MIDI功能的未定义参考

使用Code :: Blocks和GNU GCC编译器。

#include <windows.h> 
#include <mmsystem.h> 
#include <stdio.h> 

int main() { 
    printf("%d", midiInGetNumDevs()); 
    return 0; 
} 

我在编译得到未定义的参考`midiInGetNumDevs @ 0'

midiInGetNumDevs

+0

这可能会有所帮助:http://stackoverflow.com/questions/5505706/using-mmsystem-h-in-visualstudio-2008 – ebbs

回答

0

如果你看一看midiInGetNumDevs你会看到,它需要Winmm.lib。您需要将其添加到您的项目中,以便该功能可以链接到它。

1

您需要链接到winmm.lib。在Visual Studio中,您可以通过将其添加到项目属性中的其他依赖关系来完成此操作。该项目

单击鼠标右键,选择属性,然后链接,然后输入。将winmm.lib添加到中的文件列表附加依存关系

编辑:只是注意到你正在使用GCC。在这种情况下,可能在评论中链接的解决方案会更好。在标题后添加#pragma comment(lib, "winmm.lib")