I understand. Here, I really think that the issue is with the distribution as I am running SuSe as well. (V9.0, gcc 3.3.1, kernel 2.4.21-144) This is what happens:
james/nigpib-linux-0.8.5> ./INSTALL
NI-488.2 GPIB Driver for Linux/x86 (Beta Release 0.8.5)
Copyright (C) 1999-2003 National Instruments Corporation.
Supports AT-GPIB/TNT, AT-GPIB/TNT PnP, and PCI-GPIB cards ONLY.
Note that PCII/a and PCMCIA cards are NOT supported; see README for more info.
This driver requires a stable Linux 2.0.x, 2.2.x, or 2.4.x series kernel with
loadable modules and module versioning enabled.
Your kernel appears to be configured properly to build NI-GPIB for Linux.
Do you want to proceed? [yn] y
gcc -c -O2 -D__KER
NEL__ -I/lib/modules/2.4.21-144-default/build/include -DMODULE -DMODVERSIONS -include /lib/modules/2.4.21-144-default/build/include/linux/modversions.h -D__GPIBDRIVER__ -o ib_linux-2.4.21-144-default.o ib_linux.c
ib_linux.c:419:6: missing binary operator before token "("
make: *** [ib_linux-2.4.21-144-default.o] Error 1
Couldn't build driver.
As I mentioned, the only way I found to fix this is to assume that HZ=1000 (as it is defined in
) and delete all the preprocessor lines and the other ticks= lines. It seems to work, but obviously is not a real solution.
I think a bigger issue overall with the driver has been brought up in this thread;
http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101&RPAGEID=135&HOID=50650000000800000062870000&UCATEGORY_0=_26_%24_13_&UCATEGORY_S=0&USEARCHCONTEXT_QUESTION_0=libgpib&USEARCHCONTEXT_QUESTION_S=0
There really does seem to be funky going on with that library which could be easily fixed in the distribution.
James