você está aqui: Home
→
Arquivo de Mensagens
Colaboração: Gabriel Menezes Nunes
Data de Publicação: 05 de Novembro de 2006
É possível descobrir qual API gráfica um determinado programa usou apenas tendo acesso ao seu binário. Isso pode ser interessante caso você goste da interface gráfica de algum software proprietário e queira saber como ele foi escrito. Ou quem sabe apostar com seus amigos qual é melhor: GTK ou QT!!!
Com o comando 'strings', o qual mostra todas as cadeias de caracteres imprimíveis de um binário, é fácil observar quais são as funções chamadas dentro de um programa ou determinar com qual biblioteca o programa foi linkado.
Exemplo: Skype:
strings skype | more
Notamos que existe a string "libqt-mt.so.3 indicando que foi compilado usando QT 3.
Para melhorar a saida podemos já tentar uma das duas bibliotecas gráficas mais usadas: QT e GTK.
Exemplo: VMware-Player:
strings vmplayer | grep gtk | more
Observamos um número alto de chamadas à biblioteca GTK, o qual é determinante para provar que este foi usado como API gráfica.
Também é possível utilizar o comando ldd
, tendo como parâmetro o binário. Este comando mostrará todas as libs que foram usados durante a linkagem na compilação.
ldd skype
Mostra várias libs, incluindo libqt-mt.so.3,
indicando o uso do QT.