o que é ranlib?

9

Eu tenho usado um sistema MacOSX por um tempo, mas apenas recentemente comecei a cutucar as vísceras. Eu encontrei um guia dizendo-me para executar 'sudo ranlib /usr/local/lib/libjpeg.a'(installing libjpeg). Eu li o manual do ranlib e tentei procurar on-line nele. Eu simplesmente não entendo. Quais recursos eu preciso procurar para aprender mais, ou alguém pode dar uma explicação concisa sobre seu uso? Obrigado antecipadamente!

    
por Ying 25.03.2012 / 16:58

3 respostas

5

ranlib adiciona ou atualiza arquivos de objetos em um biblioteca estática . Os vinculadores podem usar bibliotecas estáticas quando vincula para fornecer symbols que o código precisa para operar (ao contrário do loader procurando por eles em bibliotecas dinâmicas ao executar o executável).

    
por 25.03.2012 / 17:34
11

Esta descrição parece bastante clara: link

Então, se você arquivar uma coleção de arquivos de objetos, diga:

$ ar r fruits.a apple.o orange.o pineapple.o

Em seguida, executando

$ ranlib fruits.a

cria um índice do conteúdo de frutas.a e armazena o índice em frutas.a. Isso é útil para vincular e caso os objetos chamem uns aos outros.

    
por 13.06.2014 / 17:19
7

O ranlib gera um índice para o conteúdo de um arquivo e o armazena no arquivo. O índice lista cada símbolo definido por um membro de um archive que é um arquivo de objeto relocável. Um arquivo com esse índice acelera a vinculação à biblioteca e permite que as rotinas na biblioteca chamem umas às outras sem levar em conta o posicionamento delas no arquivo.

fonte: página man do ranlib

    
por 05.01.2016 / 20:06

Tags