Category Archives: Linux

C/C++: cannot open shared object file

As bibliotecas compartilhadas são carregadas no início da execução de um programa. No Linux, o dynamic loader procura pelas bibliotecas em /lib e /usr/lib. Caso a biblioteca não esteja presente neste caminho, recebemos uma mensagem de erro parecida com a … Continue reading

Posted in C, CPP, Linux | Tagged , , , , , , , | 7 Comments

C: Descobrir se um processo está em execução

No Linux é muito comum um daemon, durante sua execução, criar um arquivo .pid dentro de /var/run. Dentro do arquivo syslogd.pid, por exemplo, contém o PID da instância do syslogd em execução. Usa-se este mecanismo para impedir que duas instâncias … Continue reading

Posted in C, Linux, Shell | Tagged , , , , , | 3 Comments

Shell: Obter o IP da interface de rede

(LANG=C; ifconfig eth0|grep “inet addr”|cut -f2 -d:|cut -f1 -d” “) Para pegar o endereço de uma interface diferente basta colocar o nome dessa interface no lugar de eth0. É interessante que o comando seja colocado entre parênteses, para não modificar o … Continue reading

Posted in Linux, Shell | Tagged , , | 7 Comments

Shell: Descobrir seu IP na internet

Algumas vezes uma máquina está conectada à internet de forma indireta, através de um proxy ou mesmo um firewall com múltiplos links de internet. Os comandos seguintes permitem descobrir qual IP a máquina está utilizando na internet. Utilizando o wget: … Continue reading

Posted in Linux, Shell | Tagged , , , , , , , | Leave a comment

Limpar caches de disco e de filesystem no Linux

Palavras-chave: linux, cache, buffers, limpeza, memória, carregamento, disco, filesystem O Linux mantém em memória os dados recentemente carregados do disco, e ali eles ficam enquanto possível. Isso acelera o processo de carregamento destes mesmos dados no futuro, como na execução … Continue reading

Posted in Linux | 4 Comments

C: Segmentation fault em programas OpenGL com multi-threading

Palavras-chave: OpenGL, Linux, multi-thread, drivers NVidia, crash, segmentation fault, segfault Se seu programa explode em uma função OpenGL sem nenhum motivo aparente, verifique se a chamada está sendo feita desde a thread onde a OpenGL foi inicializada. As bibliotecas que … Continue reading

Posted in C, Linux | 2 Comments