[OpenAFS] Re: openafs on debian with linux 2.6.18 kernel
Jan Pospisil
honik@kma.zcu.cz
Wed, 25 Oct 2006 19:07:36 +0200 (CEST)
On Wed, 25 Oct 2006, Jeffrey Hutzelman wrote:
> On Wednesday, October 25, 2006 05:08:47 PM +0200 Jan Pospisil
> <honik@kma.zcu.cz> wrote:
>
>> Hello, I've just found two more issues:
>>
>> 1. In the source distribution openafs-1.4.2-src.tar (available on the
>> web), and therefore as well as in the openafs-modules-source debian
>> package, there is a wrong absolute path to cpp (there is no /lib/cpp on
>> debians i386_*). The faulty files are:
>>
>> ./src/lwp/Makefile.in
>
> You don't care; this use doesn't apply to linux
>
>> ./src/sys/Makefile.in
>
> ... and this one only applies to AIX and HP-UX
>
>> ./src/shlibafsrpc/Makefile.in
>> ./src/libafsrpc/Makefile.in
>
> These uses apply to Linux, but I've never seen a complaint before.
> /lib/cpp has been the traditional location of the C preprocessor for decades,
> and that reference has been there since we got the code from IBM. Also,
> there's a cpp in my Debian system. Perhaps you need to do
> 'apt-get install cpp' ?
Of course I have cpp installed, but once more, it is not in /lib/cpp, but
in /usr/bin/cpp. This is the standard location on all Linuxes I've ever
seen (Debian, RH, SuSe, Scientific, ...).
>> 2. The build fails with the following error:
>>
>> CC [M] /usr/src/modules/openafs/src/libafs/MODLOAD-2.6.18-SP/afs_analyze.o
>> In file included from /usr/src/modules/openafs/src/afs/afsincludes.h:44,
>> from
>> /usr/src/modules/openafs/src/libafs/MODLOAD-2.6.18-SP/afs_analyze.c:36:
>> /usr/src/modules/openafs/src/afs/afs.h:157: error: field 'Fid' has
>> incomplete type
>> /usr/src/modules/openafs/src/afs/afs.h:201: error: field 'fid' has
>> incomplete type
>>
>> ...
>>> However, that error suggests you somehow have non-AFS headers in your
>>> include path interfering with the AFSFid type being defined.
>
> What Derrick is telling you is that this is not a bug in OpenAFS; it's a
> problem with your build environment. We can't guess what it is; you'll have
> to look for it.
>
> The AFSFid type is defined in src/fsint/common.xg.
>
> As Derrick said, something is interfering with the build. In this case, it
> looks like it's your lack of a cpp, which is preventing rxgen from including
> common.xg when afsint.xg is compiled into afsint.h. So again, the solution
> to your problem is
>
> apt-get install cpp
Unfortunately this cannot be the solution (since I definitely have cpp and
as I already mentioned, I temporarily solved the cpp problem by changing
the /lib/cpp to /usr/bin/cpp in above Makefiles, no other changes).
I tried to run the find through the whole filesystem to look for all *.h
files containing AFSFid, but didn't find anything. I have two identical
systems with the only difference, and it is the kernel tree. I am building
fine on system with PENTIUMM and got these errors on ATHLON (these are the
major differences, but I have no idea if relevant or not), both
linux-2.6.18.
Thank you in advance for other suggestions and help.
Regards
Jan
----------------------------------------------------------------------
Ing. Jan Pospisil, Ph.D. e-mail: Jan.Pospisil@kma.zcu.cz
University of West Bohemia phone: (+420) 37763-2675
Department of Mathematics fax: (+420) 37763-2602
Plzen, Czech Republic address: Univerzitni 22, 306 14
----------------------------------------------------------------------