[Click] Problem compiling click 1.8.0 (userlevel)

Eddie Kohler kohler at cs.ucla.edu
Fri Oct 22 11:17:32 EDT 2010


Hi Kostas,

Have you tried the current Git sources?  As Bart points out the first 
error should be fixed there.  The second error may still happen, 
however.  Here are two suggestions that may fix it; you are right that 
you should NOT comment out that if statement.

(1) Replace
	IPFlowID rflowid(IPAddress(), 0, xflowid.daddr(), 0);
with
	IPFlowID rflowid(0, 0, xflowid.daddr(), 0);

(2) Replace
	IPFlowID rflowid(IPAddress(), 0, xflowid.daddr(), 0);
with
	IPFlowID rflowid = IPFlowID(IPAddress(), 0, xflowid.daddr(), 0);

I think (1) should suffice.  Please let us know if it does, and we will 
apply the patch to the source.

Eddie


On 10/21/10 7:25 AM, Kostas Pelechrinis wrote:
> Hi folks.
>
> I have tried to compile click-1.8.0 on a FC 3 machine with gcc version 3.3.4.  I know this is an old configuration but this is what I should use :(
>
> When I compile I get the following two erros:
>
> 1) at /include/click/timer.hh i int Timer::_schedpos1 the _schedpos1 is set to private and it hits an error based on this, so I moved it to the public part of the class and this error is gone.
>
> Then I get the following:
>
> 2) ../elements/ip/ipaddrrewriter.cc: In member function `virtual IPRewriterEntry*
>     IPAddrRewriter::get_entry(int, const IPFlowID&, int)':
> ../elements/ip/ipaddrrewriter.cc:112: error: type specifier omitted for
>     parameter
> ../elements/ip/ipaddrrewriter.cc:112: error: parse error before numeric
>     constant
> ../elements/ip/ipaddrrewriter.cc:113: error: no matching function for call to `
>     HashContainer<IPRewriterEntry, HashContainer_adapter<IPRewriterEntry>  >::get
>     (IPFlowID (&)(...))'
> ../include/click/hashcontainer.hh:534: error: candidates are: T*
>     HashContainer<T, A>::get(typename A::key_type&) const [with T =
>     IPRewriterEntry, A = HashContainer_adapter<IPRewriterEntry>]
> make: *** [ipaddrrewriter.o] Error 1
>
> In order to eliminate this error I tried a few things but what worked was to comment out the following lines from CLICKDIR/elements/ip/ipaddrrewriter.cc
>
> if (!m) {
>      IPFlowID rflowid(IPAddress(), 0, xflowid.daddr(), 0);
>      m = _map.get(rflowid);
> }
>
> After this everything worked fine, and I tested the test.click configuration (as mentioned in the installation guide) and everything worked fine.
>
> I can see that the first error should not affect the operations of click but I am worried about the second one and the lines I commented out.  Do you have any suggestions/insights?
>
> Thanks,
> Kostas
>
>
>
> _______________________________________________
> click mailing list
> click at amsterdam.lcs.mit.edu
> https://amsterdam.lcs.mit.edu/mailman/listinfo/click


More information about the click mailing list