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

Reply via email to