2013-01-24 30 views
0

我正在写一个代码来获得与Sigar库CPU使用率,但是当我尝试编译代码时,我得到这个错误:未定义引用到`sigar_cpu_perc_calculate(sigar_cpu_t *,sigar_cpu_t *,sigar_cpu_perc_t * )@ 12' 我的代码有什么问题?在.pro文件,我增加未定义的引用Sigar库

INCLUDEPATH += "path_to\\sigar-bin\\include" 
LIBS += "path_to\\sigar-bin\\lib\\sigar-x86-winnt.lib" 

代码:

#include <QDebug> 
#include <sigar.h> 
#include <sigar_format.h> 

int main(int argc, char *argv[]) 
{ 
    QCoreApplication a(argc, argv); 

    sigar_t *sigarcpu1; 
    sigar_cpu_t cpu1; 
    sigar_open(&sigarcpu1); 
    sigar_cpu_get(sigarcpu1, &cpu1); 
    sigar_close(sigarcpu1); 

    sigar_t *sigarcpu2; 
    sigar_cpu_t cpu2; 
    sigar_open(&sigarcpu2); 
    sigar_cpu_get(sigarcpu2, &cpu2); 
    sigar_close(sigarcpu2); 

    sigar_cpu_perc_t perc; 
    sigar_cpu_perc_calculate(&cpu1, &cpu2, &perc); 
    qDebug() << perc.combined; 

    return a.exec(); 
} 
+0

也许需要包装sigar包含在“extern”C“{...}”中块?? – Roddy

+0

现在好了代码编译,但我得到perc.combined结果的“南” – user1576869

回答