[Xorp-hackers] Compile failed @ asyncio.cc on MIPS64/Linux/GCC3.4.3

Pavlin Radoslavov pavlin at ICSI.Berkeley.EDU
Thu Sep 4 09:08:00 PDT 2008


After some additional investigation I think I found the root of the
problem.

If XORP_ROOT is not set, then the derived path to the executables is
either the install path (/usr/local/xorp by default) or the build
directory (if XORP is running from the build directory itself).
In your case you have mounted the original install directory under
a different path (/mnt/xorp) hence the executables needed by the
rtrmgr are not found.

Currently there is no command-line option to explicitly set the path
to the binary files (e.g., like the setting of the targets and
templates directories).
The solution is to use the XORP_ROOT environmental variable as I
specified in my previous email.

Pavlin

Pavlin Radoslavov <pavlin at ICSI.Berkeley.EDU> wrote:

> RTP Techie <rtp.techie at gmail.com> wrote:
> 
> > Here is the next issue that I've when run it from my target system.
> > 
> > There is not enough space for me to copy the files to "tagert".
> > 
> > From the target, I mnt it back to my host system from "/mnt/xorp" to
> > "/home/cmchan/dev/xorp-builds/mips64-montavista-linux".
> > 
> > 
> > 
> > By following the user guide, I need to run xorp_rtrmgr 1st.
> > 
> > By default it looks for config and template files from the host-path, so I
> > need to use command option to set them correctly, like in below:
> > 
> > ./mips64-montavista-linux-xorp_rtrmgr -v -b /mnt/xorp/config/static.boot  -x
> > /mnt/xorp/xrl/targets/ -t /mnt/xorp/etc/templates/
> > 
> > 
> > 
> > Yes, I also create a group and add root to it.
> > 
> > But then I see the following error, and not sure what to do with it.
> 
> It looks like something is mixed-up when the rtrmgr tries to choose
> the path to the XORP binaries. Assuming everything is installed
> under /mnt/xorp, you could try to set the XORP_ROOT environmental
> variable. E.g.:
> 
> setenv XORP_ROOT /mnt/xorp
> /mnt/xorp/bin/xorp_rtrmgr -b /mnt/xorp/config/static.boot
> 
> Hope that helps,
> Pavlin
> 
> > 
> > 
> > root at target:/mnt/xorp/bin# ./mips64-montavista-linux-xorp_rtrmgr -v -b
> > /mnt/xorp/config/static.boot  -x /mnt/xorp/xrl/targets/ -t /mnt/x
> > orp/etc/templates/
> > 
> > [ 1970/06/29 06:46:26 TRACE mips64-montavista-linux-xorp_rtrmgr RTRMGR ]
> > Boot file                  := /mnt/xorp/config/static.boot
> > 
> > [ 1970/06/29 06:46:26 TRACE mips64-montavista-linux-xorp_rtrmgr RTRMGR ]
> > Templates directory        := /mnt/xorp/etc/templates/
> > 
> > [ 1970/06/29 06:46:26 TRACE mips64-montavista-linux-xorp_rtrmgr RTRMGR ] Xrl
> > targets directory      := /mnt/xorp/xrl/targets/
> > 
> > [ 1970/06/29 06:46:26 TRACE mips64-montavista-linux-xorp_rtrmgr RTRMGR ]
> > Execute Xrls               := true
> > 
> > [ 1970/06/29 06:46:26 TRACE mips64-montavista-linux-xorp_rtrmgr RTRMGR ]
> > Restart failed processes   := false
> > 
> > [ 1970/06/29 06:46:26 TRACE mips64-montavista-linux-xorp_rtrmgr RTRMGR ]
> > Print verbose information  := true
> > 
> > [ 1970/06/29 06:46:31  INFO mips64-montavista-linux-xorp_rtrmgr:8444 RTRMGR
> > +239 master_conf_tree.cc execute ] Changed modules: interfaces, firewall,
> > fea, rib, policy, static_routes
> > 
> > [ 1970/06/29 06:46:31  ERROR mips64-montavista-linux-xorp_rtrmgr:8444 RTRMGR
> > +2253 task.cc fail_tasklist_initialization ] Cannot create module
> > interfaces:
> > /home/cmchan/dev/xorp-builds/mips64-montavista-linux/fea/xorp_fea: file does
> > not exist
> > 
> > [ 1970/06/29 06:46:31  ERROR mips64-montavista-linux-xorp_rtrmgr:8444 RTRMGR
> > +641 master_conf_tree.cc commit_changes_pass2 ] Commit failed in deciding
> > startups
> > 
> > [ 1970/06/29 06:46:31  ERROR mips64-montavista-linux-xorp_rtrmgr:8444 RTRMGR
> > +251 master_conf_tree.cc config_done ] Configuration failed: Cannot create
> > module interfaces:
> > /home/cmchan/dev/xorp-builds/mips64-montavista-linux/fea/xorp_fea: file does
> > not exist
> > 
> > [ 1970/06/29 06:46:31  INFO mips64-montavista-linux-xorp_rtrmgr:8444 RTRMGR
> > +2228 task.cc run_task ] No more tasks to run
> > 
> > 
> > 
> > 
> > Seem like xorp_rtrmgr is trying to exec "xorp_fea" from my host path? How to
> > address this?
> > Thanks,
> > 
> > RT
> > 
> > 
> > 
> > On Tue, Sep 2, 2008 at 8:22 PM, Pavlin Radoslavov
> > <pavlin at icsi.berkeley.edu>wrote:
> > 
> > > RTP Techie <rtp.techie at gmail.com> wrote:
> > >
> > > > Hi,
> > > >  I just downloaded the XORP 1.5 and was trying to compile it. I was able
> > > to
> > > > compile it with no problem on native Linux EL3 using GCC 3.4.5
> > > > But when I try to cross compile it for mips64 using GCC 3.4.3 (that is
> > > the
> > > > tool chain that we are using on the embedded system).
> > > > I got the following compilatin errors and hope if anyone knows how to
> > > > address it:
> > >
> > > It looks like some of the C++ header files generate those errors.
> > > Could you try to compile the following simple C++ program using the
> > > mips64_fp_be-g++ compiler:
> > >
> > > #include <new>
> > > #include <iostream>
> > >
> > > int
> > > main()
> > > {
> > >    return (0);
> > > }
> > >
> > >
> > > First try to do it without any extra arguments:
> > > /export/crosstools/mvl40/mips64/fp_be/bin/mips64_fp_be-g++ test.cc
> > >
> > > Then try it with the -I/export/crosstools/mvl40/mips64/fp_be/include
> > > g++ argument.
> > >
> > > This will help us narrow our focus on the problem.
> > >
> > > Pavlin
> > >
> > > P.S. Have you modified file libxorp/asyncio.cc?
> > > The first error below referes to file xorph.h included from
> > > asyncio.cc line 22, but in the XORP-1.5 source code the actual line
> > > where xorp.h is included is 20.
> > >
> > >
> > > > gmake[3]: Entering directory `/export/home/cmchan/dev/xorp-1.5/libxorp'
> > > /bin/sh
> > > > ../libtool --tag=CXX   --mode=compile
> > > > /export/crosstools/mvl40/mips64/fp_be/bin/mips64_fp_be-g++
> > > -DHAVE_CONFIG_H
> > > > -I. -I.. -I..  -I/export/crosstools/mvl40/mips64/fp_be/include -mtune=sb1
> > > > -mabi=n32  -I/export/crosstools/mvl40/mips64/fp_be/include -mtune=sb1
> > > > -mabi=n32 -g -Werror -W -Wall -Wwrite-strings -Wcast-qual -Wpointer-arith
> > > > -Wcast-align -Woverloaded-virtual -ftemplate-depth-25 -pipe -MT
> > > asyncio.lo
> > > > -MD -MP -MF .deps/asyncio.Tpo -c -o asyncio.lo asyncio.cc
> > > >  /export/crosstools/mvl40/mips64/fp_be/bin/mips64_fp_be-g++
> > > -DHAVE_CONFIG_H
> > > > -I. -I.. -I.. -I/export/crosstools/mvl40/mips64/fp_be/include -mtune=sb1
> > > > -mabi=n32 -I/export/crosstools/mvl40/mips64/fp_be/include -mtune=sb1
> > > > -mabi=n32 -g -Werror -W -Wall -Wwrite-strings -Wcast-qual -Wpointer-arith
> > > > -Wcast-align -Woverloaded-virtual -ftemplate-depth-25 -pipe -MT
> > > asyncio.lo
> > > > -MD -MP -MF .deps/asyncio.Tpo -c asyncio.cc -o asyncio.o
> > > > In file included from
> > > >
> > > /export/crosstools/mvl40/mips64/fp_be/bin/../lib/gcc/mips64-montavista-linux/3.4.3/../../../../target/usr/include/c++/3.4.3/new:41,
> > > >                  from ../libxorp/xorp.h:64,
> > > >                  from asyncio.cc:22:
> > > >
> > > /export/crosstools/mvl40/mips64/fp_be/bin/../lib/gcc/mips64-montavista-linux/3.4.3/../../../../target/usr/include/c++/3.4.3/cstddef:53:
> > > > error: expected unqualified-id before "unsigned"
> > > >
> > > /export/crosstools/mvl40/mips64/fp_be/bin/../lib/gcc/mips64-montavista-linux/3.4.3/../../../../target/usr/include/c++/3.4.3/cstddef:53:
> > > > error: expected `;' before "unsigned"
> > > > In file included from ../libxorp/xorp.h:64,
> > > >                  from asyncio.cc:22:
> > > >
> > > /export/crosstools/mvl40/mips64/fp_be/bin/../lib/gcc/mips64-montavista-linux/3.4.3/../../../../target/usr/include/c++/3.4.3/new:84:
> > > > error: declaration of `operator new' as non-function
> > > >
> > > /export/crosstools/mvl40/mips64/fp_be/bin/../lib/gcc/mips64-montavista-linux/3.4.3/../../../../target/usr/include/c++/3.4.3/new:84:
> > > > error: expected unqualified-id before "unsigned"
> > > >
> > > > Thanks,
> > > > RT
> > > > _______________________________________________
> > > > Xorp-hackers mailing list
> > > > Xorp-hackers at icir.org
> > > > http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-hackers<http://mailman.icsi.berkeley.edu/mailman/listinfo/xorp-hackers>
> > >
> > _______________________________________________
> > Xorp-hackers mailing list
> > Xorp-hackers at icir.org
> > http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-hackers
> 
> _______________________________________________
> Xorp-hackers mailing list
> Xorp-hackers at icir.org
> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-hackers



More information about the Xorp-hackers mailing list