user454083
user454083

Reputation: 1397

The benefit of libraries over object files

I have been reading topic regarding linux libraries http://www.yolinux.com/TUTORIALS/LibraryArchives-StaticAndDynamic.html

it mentions:

"The benefit is that each and every object file need not be stated when linking because the developer can reference the individual library"

I am not following this statement. I wonder if someone could have a further explanation or an example please?

Thanks

Upvotes: 0

Views: 35

Answers (1)

Ami Tavory
Ami Tavory

Reputation: 76297

It's not the best phrasing in the world, IIUC, and is a bit misleading. IMHO, instead of

The benefit is that each and every object file need not be stated when linking because the developer can reference the individual library

it should say

The benefit is that each and every object file need not be stated when linking because the developer can reference the entire library (as a named entity)

Basically, it means the following. In the absence of libraries, the author of what is now a library, could simply build a list of object files, like this:

a0.cpp -> a0.o
a1.cpp -> a1.o
...

and then she could write in the documentation "if you want functions x, y, and z", then you need to link with a3.o (because it contains x and z), a42.o (for y), but also a23.o, a15.o, and a72.o, because they contain necessary underlying parts.

This is of course unwieldy. A saner approach, as your link explains, is to create a single library from a state of common-purpose functions and classes. The instructions become "if you want the functionality of shooting up foo aliens, link with the foo_alien_shooting library".

Upvotes: 2

Related Questions