对getprocessmemoryinfo @ 12的未定义引用

时间:2014-01-26 07:54:24

标签: c windows memory-management

我正在尝试使用以下方法计算Windows上C语言当前进程的主要内存使用情况:

WINDOWS.H psapi.h

PROCESS_MEMORY_COUNTERS_EX pmc;
GetProcessMemoryInfo(GetCurrentProcess(), &pmc, sizeof(pmc));
SIZE_T physMemUsedByMe = pmc.WorkingSetSize;

它给了我错误:

  

对getprocessmemoryinfo @ 12

的未定义引用

知道怎么解决这个问题吗?我的编译器是mingw32-gcc.exe

1 个答案:

答案 0 :(得分:9)

编译器使用声明该函数的头文件来编译代码。但链接器确实需要定义所使用的外部函数。这通常在导入库中提供。该错误消息告诉您链接器没有这样的定义。

链接
-lpsapi

为链接器提供适当的导入库。