You are absolutely correct. My mistake. Looking at the net-snmp repository,
that 'broken' LDFLAGS ordering has been like that for who knows how long. So
the 5.4.1 tarball from net-snmp, it's as 'broken' as 5.7.1. Yikes, the
makefile.in files for all the tools (i.e. command-line goodies like ‘snmpwalk’)
has the same problem.
In talking with the original engineer who brought in the net-snmp code, he had
to modify every Makefile.in to get it to compile correctly. He also had to
rename a global variable to prevent the snmp code from crashing during bring
up. The global variable is "Sessions" in net-snmp/snmplib/snmp_api.c. He
renamed it to "SessionsNetSnmp", a name much more unlikely to be in conflict
with anything.
As for the LDFLAGS issue, it appears that it doesn't matter which g++ compiler
I use, I get the same result for all of them. So my question still is, why are
the {LDFLAGS} after $(LOCAL_LIBS)? Also, does 5.7.1, unaltered, compile
correctly for anyone using a g++ compiler? Would changing the order adversely
affect anyone not using a g++ compiler? Moreover, if this is a problem for most
(if not all) g++ compilers, can't we fix it? I really wanted to use net-snmp,
unaltered, but it appears that I cannot, bummer. This means every time we pull
in a new net-snmp, someone will have to make the same fixes, over, and over
again--like I said, bummer.
Thanks,
Elicia
> Date: Tue, 6 Dec 2011 12:32:42 +0000
> Subject: Re: Link problem with 5.7.1 and g++
> From: [email protected]
> To: [email protected]
> CC: [email protected]
>
> 2011/12/2 Elicia Syson <[email protected]>:
> > We noticed the snmpd rule changed in the
> > snmp/masteragent/netsnmp/net-snmp/agent/Makefile.in file.
> >
> > net-snmp-5.4.1 Makefile.in:
> > snmpd$(EXEEXT): ${LAGENTOBJS} $(USELIBS) $(AGENTLIB) $(HELPERLIB)
> > $(MIBLIB) $(LIBTARG)
> > $(LINK) $(CFLAGS) ${LDFLAGS} -o $@ ${LAGENTOBJS} $(LOCAL_LIBS)
> > ${OUR_AGENT_LIBS}
> >
>
>
> > net-snmp-5.7.1 Makefile.in:
> > snmpd$(EXEEXT): ${LAGENTOBJS} $(USELIBS) $(AGENTLIB) $(MIBLIB) $(LIBTARG)
> > $(LINK) $(CFLAGS) -o $@ ${LAGENTOBJS} $(LOCAL_LIBS) ${LDFLAGS}
> > ${OUR_AGENT_LIBS}
>
>
> > Could you please enlighten us as to why this snmpd rule change was made, and
> > why the 5.7.1 rule does not work for us?
>
> I've just checked the code in the tarballs we released, and both
> 5.4.1 and 5.7 have
> the same structure in the agent/Makefile.in rule - with LDFLAGS coming after
> LOCAL_LIBS in both cases.
> So the code you were using before must have been from another
> source, and this
> change must have been introduced by the people that put it together.
>
> It's certainly not a change that we have introduced, and the (broken
> (for you)) version
> is what we have shipped for many many years.
>
>
> Dave
------------------------------------------------------------------------------
Cloud Services Checklist: Pricing and Packaging Optimization
This white paper is intended to serve as a reference, checklist and point of
discussion for anyone considering optimizing the pricing and packaging model
of a cloud services business. Read Now!
http://www.accelacomm.com/jaw/sfnl/114/51491232/
_______________________________________________
Net-snmp-users mailing list
[email protected]
Please see the following page to unsubscribe or change other options:
https://lists.sourceforge.net/lists/listinfo/net-snmp-users