Link Archiver: Difference between revisions

Jump to navigation Jump to search
[unchecked revision][unchecked revision]
Content added Content deleted
(Clean up the article and align style with other binutils articles)
m (Bot: Replace deprecated source tag with syntaxhighlight)
 
Line 9: Line 9:
== Usage ==
== Usage ==
The tool itself is about as simple as its purpose. To archive a series of object files:
The tool itself is about as simple as its purpose. To archive a series of object files:
<source lang="bash">ar -rcs archive.a obj_fil1.o obj_fil2.o obj_fil3.o obj_fil4.o ... obj_filN.o</source>
<syntaxhighlight lang="bash">ar -rcs archive.a obj_fil1.o obj_fil2.o obj_fil3.o obj_fil4.o ... obj_filN.o</syntaxhighlight>


Then, to link against them:
Then, to link against them:
<source lang="bash">cc example.c archive.a -o example.bin</source>
<syntaxhighlight lang="bash">cc example.c archive.a -o example.bin</syntaxhighlight>


'''Important''': If you link other object files besides the library ''archive.a'', take care that the ''archive.a'' is right behind these object files (or have it be the very last file in the list of files to link) - so the linker can resolve the one or other occurrence of a symbol which is covered by some member of the ''archive.a'' library.
'''Important''': If you link other object files besides the library ''archive.a'', take care that the ''archive.a'' is right behind these object files (or have it be the very last file in the list of files to link) - so the linker can resolve the one or other occurrence of a symbol which is covered by some member of the ''archive.a'' library.