Opened 8 years ago
Closed 8 years ago
#9634 closed defect (worksforme)
rpcbind needs /usr/include/rpcsvc/{yp,ypclnt}.h
Reported by: | Owned by: | ||
---|---|---|---|
Priority: | normal | Milestone: | 8.1 |
Component: | BOOK | Version: | SVN |
Severity: | normal | Keywords: | |
Cc: |
Description ¶
I was trying to get nfs working and rpcbind does not build in 8.1-rc1.
I was able to copy {yp,ypclnt}.h to /usr/include/rpcsvc/ from another system and rpcbind built OK, but I have not yet tested nfs.
I do not know of we need to add a switch to glibc in lfs or just create a patch to add the missing headers.
I'm leaning towards a patch, depending upon the needs of other packages.
Change History (9)
comment:2 by , 8 years ago
Replying to Krejzi:
Build rpcsvc-proto if you removed --enable-obsolete-rpc:
I did use --enable-obsolete-rpc
And then build libnsl or use --enable-obsolete-nsl when building glibc:
https://github.com/thkukuk/libnsl
libnsl may be an option, but seems to be overkill for only two header files.
comment:4 by , 8 years ago
I had libnsl hanging around (libnsl-libnsl-1.0.5 which is still the currnet release), but it fails in NIS stuff
nisplus/nis_call.c: In function ‘nis_server_cache_search’: nisplus/nis_call.c:616:20: error: ‘uintptr_t’ undeclared (first use in this function); did you mean ‘intptr_t’? addr = (char *) ((uintptr_t) addr & ~(uintptr_t) 7); ^~~~~~~~~ intptr_t
and goes downhill after that.
Looks as if glibc does need to be rebuilt.
follow-up: 6 comment:5 by , 8 years ago
That can be fixed fairly easily with
#include <stdint.h>
in the appropriate file.
I had the same error in libtirpc.
comment:6 by , 8 years ago
Replying to bdubbs@…:
That can be fixed fairly easily with
#include <stdint.h>
in the appropriate file.
I had the same error in libtirpc.
Oh well, I'll try that - I thought that since I'm still in chroot I could just rebuild glibc, exit and reenter to be sure, and then continue. But apart from the fairly obvious need to not symlink /usr/libgcc for a rebuild, rebuilding fairly quickly failed with
make[2]: Entering directory '/building/glibc-2.26/sunrpc' gcc -isystem /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include -isystem /usr/include -D_RPC_THREAD_SAFE_ -D_GNU_SOURCE -DIS_IN_build -include /building/glibc-2.26/build/config.h rpc_main.c \ -o /building/glibc-2.26/build/sunrpc/cross-rpc_main.o -MMD -MP -MF /building/glibc-2.26/build/sunrpc/cross-rpc_main.o.dt -MT /building/glibc-2.26/build/sunrpc/cross-rpc_main.o -c In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include-fixed/syslimits.h:7:0, from /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include-fixed/limits.h:34, from /usr/include/sys/param.h:26, from rpc_main.c:45: /usr/lib/gcc/x86_64-pc-linux-gnu/7.2.0/include-fixed/limits.h:194:61: error: no include path in which to search for limits.h #include_next <limits.h> /* recurse down to the real one */ ^ make[2]: *** [Makefile:178: /building/glibc-2.26/build/sunrpc/cross-rpc_main.o] Error 1
comment:7 by , 8 years ago
/me swears, /lib/cpp now fails its sanity check in configure.
I'll write off this build and wait for consensus.
comment:8 by , 8 years ago
This fixed libnsl on my side:
sed -i "/string.h/a #include <stdint.h>" src/nisplus/nis_call.c
comment:9 by , 8 years ago
Resolution: | → worksforme |
---|---|
Status: | new → closed |
From the latest parameters for glibc. nfs3 works fine. Closing.
Build rpcsvc-proto if you removed --enable-obsolete-rpc:
https://github.com/thkukuk/rpcsvc-proto
And then build libtirpc (part of BLFS)
And then build libnsl or use --enable-obsolete-nsl when building glibc:
https://github.com/thkukuk/libnsl