Разница между командами статической библиотеки - PullRequest
3 голосов
/ 13 июля 2011
       ar crf library.a file1.o file2.o 
       ar rvs library.a.a file1.o file2.o
       ar rs liblprprint.a lpr_print.o
       ar rcs library.a file1.o file2.o  

На самом деле я погуглил насчет статической библиотеки и обнаружил эти 4 команды, которые можно использовать для создания статической библиотеки в gcc. Из 2-х ищется в предыдущих ответах stackoverflow. То, что я хочу знатьесть, есть ли разница между этими 4 командами?Отличаются ли они созданием статической библиотеки в каком-либо аспекте.потому что мы можем следовать одной команде для создания статической библиотеки, но почему у нас есть 4 команды для создания статической библиотеки.Это заставило меня поверить, что между всеми четырьмя командами должна быть разница. Я попробовал это на Google, но они дали команду, но я не нашел различий между ними. Так кто-нибудь знает, почему у нас есть 4 команды для работы при созданиистатическая библиотека? Какая разница между ними?Я имею в виду rs, rcs, rvs, почему они у нас есть?

1 Ответ

3 голосов
/ 13 июля 2011

С man ar

 -c       Suppresses the diagnostic message that  is  written
          to  standard  error  by  default  when  archive  is
          created.

 -r       Replaces or adds files in archive. If archive  does
          not  exist,  a  new  archive  file is created.

 -v       Gives verbose output. When used  with  options  -d,
          -r,  or  -x,  the -v option writes a detailed file-
          by-file description of the archive creation and the
          constituent  files,  and maintenance activity.

 -s       Forces the regeneration of the archive symbol table
          even  if ar is not invoked with an option that will
          modify the archive contents.
...