2013-01-24 48 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

回答