Trouble with libstatgrab

Trouble with libstatgrab

本文关键字:libstatgrab with Trouble      更新时间:2023-10-16

使用libstatgrab时遇到问题--我在编译时收到以下错误:

"libstatgrabTest.cpp:16: undefined reference to sg_get_process_stats"

我猜这是因为我需要包含处于链接状态的.so文件——尽管我不确定。正如您在下面看到的,我目前正在包含statgrab.h头文件。我为图书馆做了configured && make && make install

如果我搜索libstatgrab*,我会遇到以下内容:

./usr/local/lib/libstatgrab.so.6.2.3
./usr/local/lib/libstatgrab.la
./usr/local/lib/libstatgrab.so.6
./usr/local/lib/libstatgrab.a
./usr/local/lib/libstatgrab.so.6.2.2
./usr/local/lib/libstatgrab.so
./usr/local/lib/pkgconfig/libstatgrab.pc

对statgrab*的另一次搜索返回以下内容(仅限相关项目(:

./usr/local/bin/statgrab
./usr/local/include/statgrab_deprecated.h
./usr/local/include/statgrab.h

在编译时,我运行:g++ -g -c libstatgrabTest.cpp

在链接时,我运行:g++ -L/usr/local/lib libstatgrab.o -o libstatgrabTest

知道我做错了什么吗?libstagrabTest.cpp中的代码如下所示:

// external libraries
#include <statgrab.h> // libstatgrab (http://www.i-scream.org/libstatgrab/)
// namespace
using namespace std;
int main(void) {
  // try to initalize libstatgrab
  int * entries;
  sg_process_stats * systemStats = sg_get_process_stats(entries);
  // return
  return 0;
}
g++ -L/usr/local/lib libstatgrab.o -o libstatgrabTest

应该(在UbuntuNatty上用代码剪测试(:

g++ -L/usr/local/lib -o libstatgrabTest -lstatgrab

或者,静态链接:

g++ -L/usr/local/lib -o libstatgrabTest /usr/lib/libstatgrab.a

用你的确切来源在我的盒子上测试了这两个。