Referência inferior clock_gettime não resolvida por -lrt

0

Estou tentando compilar o programa cuja fonte é aqui . De acordo com suas instruções, estou compilando usando o comando g++ -O3 -lrt netmon.cpp -o netmon . Eu recebo esta saída:

netmon.cpp:(.text.startup+0xb3): undefined reference to 'clock_gettime'
collect2: ld returned 1 exit status

Isso é estranho, já que li que a biblioteca rt fornece essa função. O que está acontecendo?

    
por sennett 13.07.2012 / 04:40

3 respostas

1

gcc e g++ podem ser seletivos sobre a ordem dos argumentos do link. Em geral, você deve especificar os argumentos da biblioteca ( -l ) após os objetos locais. Tente isso:

g++ -O3 netmon.c -o netmon -lrt
    
por Jeremy Kerr 13.07.2012 / 05:30
1

Por fim, usei gcc e funcionou:

gcc -o netmon netmon.cpp -lrt
    
por sennett 15.07.2012 / 13:29
0

Adicione -lrt após o arquivo de origem, exemplo:

g++ -O3 -o netmon netmon.cpp -lrt

Aqui é uma outra discussão sobre o mesmo problema.

    
por Gabor Szabad 23.07.2015 / 09:19