Make bird 1.3.2 failed
Good day! I have Centos 5.6 with all lastest updates(exec yum update). And i would like to install bird 1.3.2(bird 1.3.1 installed successfuly) but when i execute "make" it not successfuly done with result: make[2]: Leaving directory `/usr/src/bird-1.3.2/obj/client' gcc -o ../bird nest/all.o filter/all.o proto/bgp/all.o proto/ospf/all.o proto/pipe/all.o proto/rip/all.o proto/static/all.o conf/all.o lib/birdlib.a -lrt lib/birdlib.a(main.o): In function `drop_uid': /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' collect2: ld returned 1 exit status make[1]: *** [../bird] Error 1 make[1]: Leaving directory `/usr/src/bird-1.3.2/obj' make: *** [all] Error 2 What is this problem? Thanks! -- Alexandre V. Pen'kov mailto:shurskiy@gmail.com Mobile: +7(916)591-9113
On Tue, Jul 26, 2011 at 02:14:00PM +0400, Alexander V. Pen'kov wrote:
Good day! I have Centos 5.6 with all lastest updates(exec yum update). And i would like to install bird 1.3.2(bird 1.3.1 installed successfuly) but when i execute "make" it not successfuly done with result: make[2]: Leaving directory `/usr/src/bird-1.3.2/obj/client' gcc -o ../bird nest/all.o filter/all.o proto/bgp/all.o proto/ospf/all.o proto/pipe/all.o proto/rip/all.o proto/static/all.o conf/all.o lib/birdlib.a -lrt lib/birdlib.a(main.o): In function `drop_uid': /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' collect2: ld returned 1 exit status make[1]: *** [../bird] Error 1 make[1]: Leaving directory `/usr/src/bird-1.3.2/obj' make: *** [all] Error 2
What is this problem?
This is strange, CAP_TO_MASK macro should be defined in /usr/include/linux/capability.h , do you have that file? -- Elen sila lumenn' omentielvo Ondrej 'SanTiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
Yes i have [root@ltest ~]# ll /usr/include/linux/capability.h -rw-r--r-- 1 root root 8183 Jul 15 15:25 /usr/include/linux/capability.h ----- Исходное сообщение ----- От: "Ondrej Zajicek" <santiago@crfreenet.org> Кому: "Alexander V. Pen'kov" <shurskiy@gmail.com> Копия: bird-users@trubka.network.cz Отправленные: Среда, 27 Июль 2011 г 3:32:36 Тема: Re: Make bird 1.3.2 failed On Tue, Jul 26, 2011 at 02:14:00PM +0400, Alexander V. Pen'kov wrote:
Good day! I have Centos 5.6 with all lastest updates(exec yum update). And i would like to install bird 1.3.2(bird 1.3.1 installed successfuly) but when i execute "make" it not successfuly done with result: make[2]: Leaving directory `/usr/src/bird-1.3.2/obj/client' gcc -o ../bird nest/all.o filter/all.o proto/bgp/all.o proto/ospf/all.o proto/pipe/all.o proto/rip/all.o proto/static/all.o conf/all.o lib/birdlib.a -lrt lib/birdlib.a(main.o): In function `drop_uid': /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' collect2: ld returned 1 exit status make[1]: *** [../bird] Error 1 make[1]: Leaving directory `/usr/src/bird-1.3.2/obj' make: *** [all] Error 2
What is this problem?
This is strange, CAP_TO_MASK macro should be defined in /usr/include/linux/capability.h , do you have that file? -- Elen sila lumenn' omentielvo Ondrej 'SanTiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
On Wednesday 27 July 2011 at 08:12 (CET), Alexander V. Pen'kov wrote:
On Tue, Jul 26, 2011 at 02:14:00PM +0400, Alexander V. Pen'kov wrote:
Good day! I have Centos 5.6 with all lastest updates(exec yum update). And i would like to install bird 1.3.2(bird 1.3.1 installed successfuly) but when i execute "make" it not successfuly done with result: make[2]: Leaving directory `/usr/src/bird-1.3.2/obj/client' gcc -o ../bird nest/all.o filter/all.o proto/bgp/all.o proto/ospf/all.o proto/pipe/all.o proto/rip/all.o proto/static/all.o conf/all.o lib/birdlib.a -lrt lib/birdlib.a(main.o): In function `drop_uid': /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' collect2: ld returned 1 exit status make[1]: *** [../bird] Error 1 make[1]: Leaving directory `/usr/src/bird-1.3.2/obj' make: *** [all] Error 2
What is this problem?
This is strange, CAP_TO_MASK macro should be defined in /usr/include/linux/capability.h , do you have that file?
Yes i have [root@ltest ~]# ll /usr/include/linux/capability.h -rw-r--r-- 1 root root 8183 Jul 15 15:25 /usr/include/linux/capability.h
I'm seeing the same on really old SLES9 boxes. Slightly less older Ubuntu 8.04 boxes are affected too. Ubuntu 10.04 are not affected. Regards, Ruben Laban
On Thursday 04 August 2011 at 16:20 (CET), Ruben Laban wrote:
On Wednesday 27 July 2011 at 08:12 (CET), Alexander V. Pen'kov wrote:
On Tue, Jul 26, 2011 at 02:14:00PM +0400, Alexander V. Pen'kov wrote:
Good day! I have Centos 5.6 with all lastest updates(exec yum update). And i would like to install bird 1.3.2(bird 1.3.1 installed successfuly) but when i execute "make" it not successfuly done with result: make[2]: Leaving directory `/usr/src/bird-1.3.2/obj/client' gcc -o ../bird nest/all.o filter/all.o proto/bgp/all.o proto/ospf/all.o proto/pipe/all.o proto/rip/all.o proto/static/all.o conf/all.o lib/birdlib.a -lrt lib/birdlib.a(main.o): In function `drop_uid': /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' /usr/src/bird-1.3.2/obj/lib/../lib/syspriv.h:49: undefined reference to `CAP_TO_MASK' collect2: ld returned 1 exit status make[1]: *** [../bird] Error 1 make[1]: Leaving directory `/usr/src/bird-1.3.2/obj' make: *** [all] Error 2
What is this problem?
This is strange, CAP_TO_MASK macro should be defined in /usr/include/linux/capability.h , do you have that file?
Yes i have [root@ltest ~]# ll /usr/include/linux/capability.h -rw-r--r-- 1 root root 8183 Jul 15 15:25 /usr/include/linux/capability.h
I'm seeing the same on really old SLES9 boxes. Slightly less older Ubuntu 8.04 boxes are affected too. Ubuntu 10.04 are not affected.
I guess my legacy SLES9 boxes will be stuck at 1.3.1 for a while. Just tried to compile 1.3.2, 1.3.3 and 1.3.4. All failed similar to this: # make make -C obj all make[1]: Entering directory `/root/bird-1.3.4/obj' make depend make[2]: Entering directory `/root/bird-1.3.4/obj' set -e ; for a in lib conf ; do make -C $a depend ; done make[3]: Entering directory `/root/bird-1.3.4/obj/lib' gcc -I../ -I../.. -MM bitops.c checksum.c event.c io.c ip.c ipv4.c krt.c lists.c log.c main.c md5.c mempool.c netlink.c patmatch.c printf.c random.c resource.c slab.c slists.c xmalloc.c >depend make[3]: Leaving directory `/root/bird-1.3.4/obj/lib' make[3]: Entering directory `/root/bird-1.3.4/obj/conf' m4 -P ../../conf/gen_keywords.m4 ../../conf/confbase.Y ../../sysdep/unix/config.Y ../../sysdep/unix/krt.Y ../../sysdep/linux/netlink/netlink.Y ../../nest/config.Y ../../filter/config.Y ../../proto/bgp/config.Y ../../proto/ospf/config.Y ../../proto/pipe/config.Y ../../proto/rip/config.Y ../../proto/static/config.Y
keywords.h m4 -P ../../conf/gen_commands.m4 ../../client/cmds.m4 ../../conf/confbase.Y ../../sysdep/unix/config.Y ../../sysdep/unix/krt.Y ../../sysdep/linux/netlink/netlink.Y ../../nest/config.Y ../../filter/config.Y ../../proto/bgp/config.Y ../../proto/ospf/config.Y ../../proto/pipe/config.Y ../../proto/rip/config.Y ../../proto/static/config.Y | sort >commands.h m4 -P ../../conf/gen_parser.m4 ../../conf/confbase.Y ../../sysdep/unix/config.Y ../../sysdep/unix/krt.Y ../../sysdep/linux/netlink/netlink.Y ../../nest/config.Y ../../filter/config.Y ../../proto/bgp/config.Y ../../proto/ospf/config.Y ../../proto/pipe/config.Y ../../proto/rip/config.Y ../../proto/static/config.Y cf-parse.y bison -bcf-parse -dv -pcf_ cf-parse.y cf-parse.y:1652.2: syntax error, unexpected "|" cf-parse.y:1652.67-68: invalid $ value cf-parse.y:1652.67-68: $6 of `constructor' has no declared type make[3]: *** [cf-parse.tab.c] Error 1 make[3]: Leaving directory `/root/bird-1.3.4/obj/conf' make[2]: *** [depend] Error 2 make[2]: Leaving directory `/root/bird-1.3.4/obj' make[1]: *** [.dep-stamp] Error 2 make[1]: Leaving directory `/root/bird-1.3.4/obj' make: *** [all] Error 2
I'm guessing it's due to an ancient bison (1.875) on these boxes? Gotta love them legacay cruft :-/ Regards, Ruben Laban
On Wed, Oct 26, 2011 at 03:30:38PM +0200, Ruben Laban wrote:
I guess my legacy SLES9 boxes will be stuck at 1.3.1 for a while. Just tried to compile 1.3.2, 1.3.3 and 1.3.4. All failed similar to this:
bison -bcf-parse -dv -pcf_ cf-parse.y cf-parse.y:1652.2: syntax error, unexpected "|" cf-parse.y:1652.67-68: invalid $ value cf-parse.y:1652.67-68: $6 of `constructor' has no declared type make[3]: *** [cf-parse.tab.c] Error 1 make[3]: Leaving directory `/root/bird-1.3.4/obj/conf' make[2]: *** [depend] Error 2 make[2]: Leaving directory `/root/bird-1.3.4/obj' make[1]: *** [.dep-stamp] Error 2 make[1]: Leaving directory `/root/bird-1.3.4/obj' make: *** [all] Error 2
I'm guessing it's due to an ancient bison (1.875) on these boxes?
Gotta love them legacay cruft :-/
Could you try attached patch? -- Elen sila lumenn' omentielvo Ondrej 'SanTiago' Zajicek (email: santiago@crfreenet.org) OpenPGP encrypted e-mails preferred (KeyID 0x11DEADC3, wwwkeys.pgp.net) "To err is human -- to blame it on a computer is even more so."
On Wednesday 26 October 2011 at 16:41 (CET), Ondrej Zajicek wrote:
On Wed, Oct 26, 2011 at 03:30:38PM +0200, Ruben Laban wrote:
I guess my legacy SLES9 boxes will be stuck at 1.3.1 for a while. Just tried to compile 1.3.2, 1.3.3 and 1.3.4. All failed similar to this:
bison -bcf-parse -dv -pcf_ cf-parse.y cf-parse.y:1652.2: syntax error, unexpected "|" cf-parse.y:1652.67-68: invalid $ value cf-parse.y:1652.67-68: $6 of `constructor' has no declared type make[3]: *** [cf-parse.tab.c] Error 1 make[3]: Leaving directory `/root/bird-1.3.4/obj/conf' make[2]: *** [depend] Error 2 make[2]: Leaving directory `/root/bird-1.3.4/obj' make[1]: *** [.dep-stamp] Error 2 make[1]: Leaving directory `/root/bird-1.3.4/obj' make: *** [all] Error 2
I'm guessing it's due to an ancient bison (1.875) on these boxes?
Gotta love them legacay cruft :-/
Could you try attached patch?
Sweet! Works like a charm. And the build issues seem to have been resolved in the meantime as well. Built and running 1.3.4 just fine on a SLES9 box now. Thanks for the quick fix! Regards, Ruben Laban
participants (3)
-
Alexander V. Pen'kov -
Ondrej Zajicek -
Ruben Laban