我正在尝试使用 Xubuntu 14.04.1 LTS 和 3.13.0-35-generic 内核中的 NI GPIB-USB-B 适配器开发代码来控制一些仪器。
在这一点上,我只是使用 ib.h 库中的函数 ibdev() 进行概念验证。当我输入以下命令时:
g++ gpibtest.cpp -o gt
我收到以下问题:“未定义对‘ibdev’的引用”。
我假设 ib.h 库位于正确的位置,因为编译器不会抱怨找不到它。
我认为我可能没有在我的 g++ 命令中输入正确的开关来包含这个库,因为我之前在 time.h 库中遇到过类似的问题,当时我需要包含 -lrt。尽管它很简单,但我一直在寻找几个小时并找不到解决方案。我查看了 ib.h 文件,它确实包含这些函数原型(虽然使用了“extern”),但我不知道在哪里可以找到它们的源代码。这似乎是一个非常基本的问题,解决方案非常简单,如果能提供任何帮助,我将不胜感激。
这是我的简单程序:
#include "visa.h"
#include <gpib/ib.h>
#include <iostream>
int main() {
int dev;
dev = ibdev(0, 5, 0, 13, 1, 0);
std::cout << "Press any key\n";
std::cin.ignore();
return 0;
}