Bug 617

Summary: netkit/inetd requires RPC and fails to build if RPC is disabled
Product: buildroot Reporter: Seth LaForge <sethml>
Component: OtherAssignee: unassigned
Status: RESOLVED FIXED    
Severity: normal CC: buildroot
Priority: P5    
Version: unspecified   
Target Milestone: ---   
Hardware: Other   
OS: Linux   
Host: Target: arm-eabi
Build: buildroot-2009.08
Attachments: 'make menuconfig' results which cause bug

Description Seth LaForge 2009-09-18 21:53:33 UTC
Created attachment 659 [details]
'make menuconfig' results which cause bug

I just tried to build with RPC disabled, and got the following error.  I'm not sure why it was trying to build netkit-base - perhaps because I was building netkit-telnet.  It should certainly be possible to build a telnet client, and probably possible to build a telnet server, without RPC.  My .config is attached.

make[2]: Entering directory `/home/seth/buildroot-2009.08/build_arm/netkit-base-0.17/inetd'
/home/seth/buildroot-2009.08/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-gcc -O2 -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline  inetd.c -c
inetd.c: In function 'exec_child':
inetd.c:380: warning: comparison between signed and unsigned
inetd.c: In function 'setup':
inetd.c:873: warning: too many arguments for format
inetd.c:892: warning: too many arguments for format
inetd.c: In function 'register_rpc':
inetd.c:942: warning: too many arguments for format
inetd.c: In function 'bump_nofile':
inetd.c:1026: warning: comparison between signed and unsigned
inetd.c:1029: warning: format '%d' expects type 'int', but argument 3 has type 'rlim_t'
/home/seth/buildroot-2009.08/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-gcc -O2 -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline  servtab.c -c
/home/seth/buildroot-2009.08/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-gcc -O2 -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline  builtins.c -c
/home/seth/buildroot-2009.08/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-gcc -O2 -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline  sig.c -c
/home/seth/buildroot-2009.08/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-gcc -O2 -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline  daemon.c -c
/home/seth/buildroot-2009.08/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-gcc -O2 -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline  setproctitle.c -c
/home/seth/buildroot-2009.08/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-gcc -O2 -Wall -W -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Winline  mysleep.c -c
/home/seth/buildroot-2009.08/build_arm/staging_dir/usr/bin/arm-linux-uclibcgnueabi-gcc  inetd.o servtab.o builtins.o sig.o daemon.o setproctitle.o mysleep.o  -o inetd
inetd.o: In function `unregister_rpc':
inetd.c:(.text+0x84): undefined reference to `pmap_unset'
inetd.c:(.text+0xc8): undefined reference to `pmap_unset'
inetd.o: In function `register_rpc':
inetd.c:(.text+0x174): undefined reference to `pmap_unset'
inetd.c:(.text+0x198): undefined reference to `pmap_set'
servtab.o: In function `loadconfigent':
servtab.c:(.text+0xe60): undefined reference to `getrpcbyname'
collect2: ld returned 1 exit status
make[2]: *** [inetd] Error 1
make[2]: Leaving directory `/home/seth/buildroot-2009.08/build_arm/netkit-base-0.17/inetd'
make[1]: *** [inetd.build] Error 2
make[1]: Leaving directory `/home/seth/buildroot-2009.08/build_arm/netkit-base-0.17'
make: *** [/home/seth/buildroot-2009.08/build_arm/netkit-base-0.17/inetd/inetd] Error 2
Comment 1 Bernhard Reutner-Fischer 2009-09-18 22:38:12 UTC
I'd suggest you use busybox' telnet client.
Comment 2 Peter Korsgaard 2009-09-19 07:50:00 UTC
Thanks. There was a missing kconfig dependency on netkitbase - Fixed in git (f5239c327e3). I agree with Bernhard though, unless you have very specific reasons to use netkittelnet I would very much suggest you use the busybox telnet(d) applets instead.
Comment 3 Seth LaForge 2009-09-19 15:37:17 UTC
Perhaps the netkit-telnet help should mention that recommendation, then?  I didn't realize that busybox had a telnetd implementation, so thanks for mentioning it!