Re: [mpls-linux-devel] mpls-quagga git repo on repo.or.cz
Status: Beta
Brought to you by:
jleu
From: <win...@fr...> - 2010-02-03 17:23:39
|
Hello James, I have tried './configure --enable-mpls=null', but meet following errors. gcc -Os -fno-omit-frame-pointer -g -std=gnu99 -Wall -Wsign-compare -Wpointer-arith -Wbad-function-cast -Wwrite-strings -Wmissing-prototypes -Wmissing-declarations -Wchar-subscripts -Wcast-qual -o .libs/ldpd impl_fib.o impl_ifmgr.o impl_lock.o impl_mm.o impl_mpls.o impl_policy.o impl_socket.o impl_timer.o impl_tree.o ldp_zebra.o ldp_main.o ldp.o ldp_interface.o ldp_vty.o ldp_remote_peer.o l2cc_interface.o ldp_addr.o ldp_adj.o ldp_attr.o ldp_buf.o ldp_cfg.o ldp_entity.o ldp_fec.o ldp_global.o ldp_hello.o ldp_hop.o ldp_hop_list.o ldp_if.o ldp_inet_addr.o ldp_init.o ldp_inlabel.o ldp_keepalive.o ldp_label_abort.o ldp_label_mapping.o ldp_label_rel_with.o ldp_label_request.o ldp_mesg.o ldp_nortel.o ldp_notif.o ldp_outlabel.o ldp_pdu_setup.o ldp_peer.o ldp_resource.o ldp_session.o ldp_state_funcs.o ldp_state_machine.o ldp_tunnel.o ldp_nexthop.o mpls_compare.o -L/usr/src/mpls-quagga/lib /usr/src/mpls-quagga/lib/.libs/libzebra.so -lcrypt -lrt impl_lock.o: In function `mpls_lock_release': /usr/src/mpls-quagga/ldpd/impl_lock.c:22: undefined reference to `mpls_assert' impl_lock.o: In function `mpls_lock_get': /usr/src/mpls-quagga/ldpd/impl_lock.c:16: undefined reference to `mpls_assert' impl_mpls.o: In function `mpls_mpls_outsegment_del': /usr/src/mpls-quagga/ldpd/impl_mpls.c:115: undefined reference to `mpls_assert' impl_mpls.o: In function `mpls_mpls_outsegment_add': /usr/src/mpls-quagga/ldpd/impl_mpls.c:71: undefined reference to `mpls_assert' impl_socket.o: In function `mpls_socket_writelist_add': /usr/src/mpls-quagga/ldpd/impl_socket.c:469: undefined reference to `mpls_assert' impl_socket.o:/usr/src/mpls-quagga/ldpd/impl_socket.c:471: more undefined references to `mpls_assert' follow collect2: ld returned 1 exit status make[2]: *** [ldpd] Error 1 make[2]: Leaving directory `/usr/src/mpls-quagga/ldpd' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/src/mpls-quagga' make: *** [all] Error 2 Thanks, Wind Quoting James Leu <jl...@mi...>: > Please look over make-rpm-jleu and you will see that I specify the 'NULL' > mpls driver. Try that first. I will work tonight to fix the > 'mpls-linux' mpls driver. > > On Wed, Feb 03, 2010 at 06:55:38PM +0800, win...@fr... wrote: >> Hello James, >> >> I follow almost all your instruction except last one "./make-rpm-jleu" >> for it's debian here not redhat. Instead I use ./bootstrap.sh, then >> ./configure and make install. >> >> There is still some error message as below, >> gcc -DHAVE_CONFIG_H -DSYSCONFDIR=\"/usr/local/etc/\" -I. -I.. -I.. -I.. >> -I../lib -Os -fno-omit-frame-pointer -g -std=gnu99 -Wall >> -Wsign-compare -Wpointer-arith -Wbad-function-cast -Wwrite-strings >> -Wmissing-prototypes -Wmissing-declarations -Wchar-subscripts >> -Wcast-qual -MT impl_mpls.o -MD -MP -MF .deps/impl_mpls.Tpo -c -o >> impl_mpls.o impl_mpls.c >> impl_mpls.c: In function ‘mpls_mpls_outsegment_add’: >> impl_mpls.c:50: error: storage size of ‘out’ isn’t known >> impl_mpls.c:58: error: ‘ZEBRA_MPLS_LABEL_GEN’ undeclared (first use in >> this function) >> impl_mpls.c:58: error: (Each undeclared identifier is reported only once >> impl_mpls.c:58: error: for each function it appears in.) >> impl_mpls.c:88: warning: implicit declaration of function >> ‘zapi_mpls_out_segment_add’ >> impl_mpls.c:50: warning: unused variable ‘out’ >> impl_mpls.c: In function ‘mpls_mpls_outsegment_del’: >> impl_mpls.c:94: error: storage size of ‘out’ isn’t known >> impl_mpls.c:102: error: ‘ZEBRA_MPLS_LABEL_GEN’ undeclared (first use in >> this function) >> impl_mpls.c:133: warning: implicit declaration of function >> ‘zapi_mpls_out_segment_delete’ >> impl_mpls.c:94: warning: unused variable ‘out’ >> impl_mpls.c: In function ‘mpls_mpls_insegment_add’: >> impl_mpls.c:139: error: storage size of ‘api’ isn’t known >> impl_mpls.c:150: error: ‘ZEBRA_MPLS_LABEL_GEN’ undeclared (first use in >> this function) >> impl_mpls.c:153: warning: implicit declaration of function >> ‘zapi_mpls_in_segment_add’ >> impl_mpls.c:139: warning: unused variable ‘api’ >> impl_mpls.c: In function ‘mpls_mpls_insegment_del’: >> impl_mpls.c:159: error: storage size of ‘api’ isn’t known >> impl_mpls.c:165: error: ‘ZEBRA_MPLS_LABEL_GEN’ undeclared (first use in >> this function) >> impl_mpls.c:168: warning: implicit declaration of function >> ‘zapi_mpls_in_segment_delete’ >> impl_mpls.c:159: warning: unused variable ‘api’ >> impl_mpls.c: In function ‘mpls_mpls_xconnect_add’: >> impl_mpls.c:173: error: storage size of ‘api’ isn’t known >> impl_mpls.c:189: error: ‘ZEBRA_MPLS_LABEL_GEN’ undeclared (first use in >> this function) >> impl_mpls.c:193: warning: implicit declaration of function >> ‘zapi_mpls_xc_add’ >> impl_mpls.c:173: warning: unused variable ‘api’ >> impl_mpls.c: In function ‘mpls_mpls_xconnect_del’: >> impl_mpls.c:200: error: storage size of ‘api’ isn’t known >> impl_mpls.c:214: error: ‘ZEBRA_MPLS_LABEL_GEN’ undeclared (first use in >> this function) >> impl_mpls.c:218: warning: implicit declaration of function >> ‘zapi_mpls_xc_delete’ >> impl_mpls.c:200: warning: unused variable ‘api’ >> impl_mpls.c: In function ‘mpls_mpls_fec2out_add’: >> impl_mpls.c:224: error: storage size of ‘api’ isn’t known >> impl_mpls.c:239: error: ‘ZEBRA_MPLS_FEC_IPV4’ undeclared (first use in >> this function) >> impl_mpls.c:245: warning: implicit declaration of function >> ‘zapi_mpls_ftn_add’ >> impl_mpls.c:224: warning: unused variable ‘api’ >> impl_mpls.c: In function ‘mpls_mpls_fec2out_del’: >> impl_mpls.c:252: error: storage size of ‘api’ isn’t known >> impl_mpls.c:265: error: ‘ZEBRA_MPLS_FEC_IPV4’ undeclared (first use in >> this function) >> impl_mpls.c:271: warning: implicit declaration of function >> ‘zapi_mpls_ftn_delete’ >> impl_mpls.c:252: warning: unused variable ‘api’ >> make: *** [impl_mpls.o] Error 1 >> >> It seems that impl_mpls.c can't find definition "zapi_mpls_out_segment" >> which lives in mpls-quagga/lib/zclient.h, but in fact there has been >> already referred in mpls-quagga/ldpd/impl_mpls. >> >> Any suggestion? >> >> Thanks, >> Wind >> >> Quoting James Leu <jl...@mi...>: >> >>> No need to patch if you are using the git repos: >>> >>> git clone git://repo.or.cz/mpls-ldp-portable.git >>> git clone git://repo.or.cz/mpls-quagga.git >>> cd mpls-quagga >>> git checkout -b mpls-master --track origin/mpls-master >>> cd ldpd >>> vi create-links (modify to point to the mpls-ldp-portable source) >>> ./create-links >>> cd .. >>> ./make-rpm-jleu >>> >>> BTW I pushed a fix for 'check_bit'. Not sure how long it will take >>> for repo.or.cz to pick up my change. >>> >>> On Tue, Jan 26, 2010 at 11:02:49AM +0800, win...@fr... wrote: >>>> Hello James, >>>> >>>> I have tried to compile the new mpls-quagga but still not success. >>>> >>>> When I try git://repo.or.cz/mpls-quagga.git, I received following >>>> error if I >>>> patch -p1 < ../mpls-ldp-portable/quagga-mpls.diff >>>> patching file lib/memtypes.c >>>> Hunk #2 succeeded at 244 (offset 2 lines). >>>> Hunk #3 succeeded at 272 (offset 2 lines). >>>> can't find file to patch at input line 34953 >>>> Perhaps you used the wrong -p or --strip option? >>>> The text leading up to this was: >>>> -------------------------- >>>> |diff -uNr --exclude=.p4config --exclude=make-rpm-jleu >>>> --exclude=update-from-kernel.sh quagga/lib/memtypes.h >>>> quagga-mpls/lib/memtypes.h >>>> |--- quagga/lib/memtypes.h 2007-05-07 09:25:54.000000000 -0500 >>>> |+++ quagga-mpls/lib/memtypes.h 2008-02-21 22:43:39.000000000 -0600 >>>> -------------------------- >>>> File to patch: >>>> >>>> So I change to use mpls-master snatshot >>>> afe0e1617a7fe5adc5aca14642f3d317e96d5246.tar.gz, after make return >>>> following error, >>>> >>>> gcc -fPIE -Os -fno-omit-frame-pointer -g -std=gnu99 -Wall -Wsign-compare >>>> -Wpointer-arith -Wbad-function-cast -Wwrite-strings -Wmissing-prototypes >>>> -Wmissing-declarations -Wchar-subscripts -Wcast-qual -pie -o .libs/zebra >>>> zserv.o main.o interface.o connected.o zebra_rib.o zebra_routemap.o >>>> redistribute.o debug.o rtadv.o zebra_snmp.o zebra_vty.o irdp_main.o >>>> irdp_interface.o irdp_packet.o router-id.o if_vlan.o if_tunnel.o >>>> mpls_vty.o mpls_lib.o ioctl.o ipforward_proc.o if_netlink.o netlink.o >>>> rt_netlink.o rtread_netlink.o ../lib/.libs/libzebra.so -lcrypt -lrt >>>> ../lib/.libs/libzebra.so: undefined reference to `check_bit' >>>> collect2: ld returned 1 exit status >>>> make[2]: *** [zebra] Error 1 >>>> make[2]: Leaving directory `/usr/src/mpls-quagga/zebra' >>>> make[1]: *** [all-recursive] Error 1 >>>> make[1]: Leaving directory `/usr/src/mpls-quagga' >>>> make: *** [all] Error 2 >>>> >>>> Any suggestion? >>>> >>>> Thanks, >>>> Wind >>>> >>>> >>>> Quoting James Leu <jl...@mi...>: >>>> >>>>> Hello all, >>>>> >>>>> I've rebuilt the mpls-quagga mirror on repo.or.cz. If you >>>>> have a clone of that repo you will want to delete it and >>>>> get a new one. >>>>> >>>>> git://repo.or.cz/mpls-quagga.git >>>>> >>>>> Thier as many branches in that repo. The ones that matter: >>>>> >>>>> jleu-master -> what I consider HEAD of line quagga >>>>> netlink-master -> my netlink changes on top of jleu-master >>>>> nexthop-master -> my nexthop changes on top of jleu-master >>>>> plus-master -> merger of netlink-master and nexthop-master plus >>>>> extra bits >>>>> mpls-master -> MPLS related changes on top of plus-master >>>>> >>>>> >>>>> -- >>>>> James R. Leu >>>>> jl...@mi... >>>>> >>>> >>> >>> -- >>> James R. Leu >>> jl...@mi... >>> >> > > -- > James R. Leu > jl...@mi... > |