[ovs-dev] ovsdb-idl

Ben Pfaff blp at nicira.com
Thu Feb 12 04:13:43 UTC 2015


Do you see symbol conflicts?  If not, then there's no real problem--the
linker will discard the unused object files.

On Thu, Feb 12, 2015 at 04:08:55AM +0000, Papudippu, Sreedhar Reddy wrote:
> Hi Ben,
> 
> I am trying to write few applications which are pure clients to OVSDB. I need to link with OVSDB-IDL.
> Currently the only way I can link with ovsdb-idl is by linking the with lib/libopenvswitch.la
> 
> Currently lib/libopenvswitch.la has sFlow, LACP, netdev-provider etc code together.
> When I link my binary with lib/libopenvswitch.la, then I carry over all the above code pieces, which I am not interested in.
> 
> That's why I want pure ovsdb-idl as a separate library.
> 
> Regards
> Sreedhar
> 
> -----Original Message-----
> From: Ben Pfaff [mailto:blp at nicira.com] 
> Sent: Wednesday, February 11, 2015 9:41 PM
> To: Papudippu, Sreedhar Reddy
> Cc: dev at openvswitch.org
> Subject: Re: [ovs-dev] ovsdb-idl
> 
> What kind of problems do you have with the rest of the library?  Maybe we should focus on that.
> 
> On Thu, Feb 12, 2015 at 02:56:15AM +0000, Papudippu, Sreedhar Reddy wrote:
> > Hi Ben,
> > 
> > I do understand that making it as a Shared library brings in lot of troubles, due to the decoupling.
> > But I am trying to make it as Static library (ovsdb-idl.a), so that if an external tool/application use the Ovsdb-ild library without carrying the rest of the baggage from open-switch/lib/*.
> > 
> > If making the OVSDB-IDL code as a seperate static library is acceptable I can submit a patch for that.
> > 
> > Regards
> > Sreedhar
> > 
> > -----Original Message-----
> > From: Ben Pfaff [mailto:blp at nicira.com]
> > Sent: Wednesday, February 11, 2015 6:55 PM
> > To: Papudippu, Sreedhar Reddy
> > Cc: dev at openvswitch.org
> > Subject: Re: [ovs-dev] ovsdb-idl
> > 
> > It's difficult to design and maintain a shared library with a stable public API and ABI.  No one has done the work yet.
> > 
> > On Tue, Feb 10, 2015 at 07:25:47PM +0000, Papudippu, Sreedhar Reddy wrote:
> > > Hello all,
> > > 
> > > I have been wondering why doesn open-vswitch code  links the entire "lib/libopenvswitch.la" into every binary in the code.
> > > 
> > > Isn't that very in-efficient? Shouldn't we create separate libraries based on some logical divide, and then link the libraries based on the need.
> > > 
> > > We should have created the following libraries in the source code.
> > > 1)      LACP.a.
> > > 2)      Sflow.a
> > > 3)      Vlog.a
> > > 4)      Ovsdb_client.a
> > > 5)      Etc......
> > > 
> > > That will give flexibility to developers who want to create their own tools based on open-vswitch code.
> > > 
> > > With the current design, a developer has to link almost the entire "lib/libopenvswitch.la" even in a small tool which uses ovsdb.
> > > 
> > > Can someone through some history behind this design.
> > > 
> > > If there is no specific reason, can I separate these things into small logical libraries and submit the patch?
> > > 
> > > Regards
> > > Sreedhar
> > > _____________________________________________
> > > From: Papudippu, Sreedhar Reddy
> > > Sent: Monday, February 09, 2015 3:10 PM
> > > To: dev at openvswitch.org
> > > Subject: ovsdb-idl
> > > 
> > > 
> > > Hello all,
> > > 
> > > I was wondering why "ovsdb-idl" client API code is not made as a separate independent library.
> > > 
> > > Assume if someone wants to write a new client for the ovsdb-idl, how will he/she link the code to the source library?
> > > How will he/she get the get the header file definitions?
> > > 
> > > Regards
> > > Sreedhar
> > > 
> > > _______________________________________________
> > > dev mailing list
> > > dev at openvswitch.org
> > > http://openvswitch.org/mailman/listinfo/dev



More information about the dev mailing list