Categories
Tutoriais Ubuntu

Como compilar e instalar o mpg123

Compilar o player mpg123 é uma ótima opção para obter a melhor performance possível em sistemas com limitação de recursos.
Se você roda o Linux em uma máquina antiga (486 ou superior), as opções de compilação permitem habilitar o 3DNOW e desabilitar o SSE, só pra citar um exemplo de como você pode adequar o aplicativo aos recursos presentes de multimídia presentes na sua CPU.
Uma vez que aquilo que não é usado é retirado, durante a compilação, o resultado é quase sempre um binário enxuto, de execução rápida e mais eficiente — e esta necessidade é, provavelmente, o principal motivo de se usar o mpg123 player: você quer ouvir muita música, sem atrapalhar a execução dos outros aplicativos no seu sistema.

Habilitar recursos específicos pro seu hardware ou descartar do aplicativo o que não serve pro seu sistema, são fortes motivos para compilar seus programas.

Onde baixar o código fonte do mpg123

Você pode fazer o download da versão mais nova do mpg123, no site SourceForge —. Ao final do artigo, há uma relação de links úteis, caso você queira se aprofundar no assunto.
Na presente data, a versão mais nova é a 1.21. Quem usa o Ubuntu 14.04 LTS, tem que se contentar com o mpg123 1.15 ou 1.16 (depende da sua máquina). A versão 1.20 está prevista para ser lançada com o Ubuntu 15.04 Vivid Vervet.
Compilar seus próprios programas, a partir do fonte, traz esta boa surpresa (código mais novo) com frequência. 😉 — Vale lembrar, contudo, código mais novo é comumente menos testado.
E, antes que você pergunte… Sim! Você pode ter uma versão padrão do seu sistema instalada e convivendo pacificamente com a versão compilada — e vou mostrar como!
Após fazer o download descompacte o tarball em algum de seus diretórios:

tar xvvjf mpg123-20141108205059.tar.bz2

Note que o nome do arquivo, inclui a data em que foi lançado e o número da sua versão. Portanto, adeque o comando ao nome exato do arquivo que você baixou.
Entre no diretório criado:

cd mpg123-20141108205059$

As dependẽncias

Se você já tiver uma versão do mpg123 instalada no seu sistema, as dependências (ou seja, as bibliotecas que o mp123 precisa para funcionar) provavelmente já estarão lá.
Se não tiver outra versão do mpg123, certifique de ter os seguintes softwares já instalados, antes de prosseguir:


...

Depends: libasound2 (>= 1.0.16), libaudio2, libc6 (>= 2.15),
libjack-jackd2-0 (>= 1.9.5~dfsg-14) | libjack-0.116, libltdl7 (>= 2.4.2),
libmpg123-0 (>= 1.15.1), libopenal1 (>= 1.14),
libportaudio2 (>= 19+svn20101113), libpulse0 (>= 0.99.1)
Suggests: alsa-utils, jackd, nas,
oss-compat, oss4-base, pulseaudio

A sessão suggests, acima, se refere a “sugestões”. Não há necessidade de instalar estes itens.

Como compilar o mpg123

De maneira resumida, você pode executar todos os 3 passos da compilação, da seguinte forma (como superusuário):

./configure
make
make install

Simples, não é?
Normalmente, o processo detecta as configurações do seu sistema e desabilita/habilita automaticamente uma série de recursos — entregando um aplicativo mais enxuto, ao final do processo.
Mas você pode, se quiser, exercer algum controle manual sobre o processo. Peça a ajuda ao sistema, para saber quais opções estão disponíveis (in english):

.configure --help=recursive

O configure permite criar vários resultados diferentes de binários, de forma que possa testar e decidir qual o melhor pro seu sistema.
Se você usa um hardware 32 bits atual, pode usar o configure assim:

./configure --with-cpu=x86

Na maioria das vezes, contudo, isto é desnecessário, uma vez que o configure provavelmente já vai detectar a sua CPU e vai criar uma compilação automaticamente sob medida pra você.
Por padrão o sistema de instalação posiciona o mpg123 em /usr/local/bin/. Mas você pode executá-lo sem indicar o caminho:

mpg123

Se você já tem uma versão do mpg123 instalada, pode indicar um nome diferente pra versão que você compilou — o que te permite comparar as duas versões ou ter uma exclusivamente para fazer uso de determinados recursos.
No exemplo abaixo, vou pedir ao configure para preparar uma versão do mpg123 específica para o dispositivo de saída de áudio alsa. Para evitar confusão, vou nomeá-lo mpg123alsa, com a opção --program-suffix=alsa. Veja como fica:

./configure --with-default-audio=alsa --program-suffix=

Com a opção --program-suffix= é possível acrescentar ao nome do programa principal um sufixo, à sua escolha.
O arquivo executável gerado terá o nome mpg123alsa.
Desta forma, você pode criar diferentes versões, com diferentes recursos habilitados/desabilitados para comparar e, se quiser, escolher qual a melhor pra você.

Como linkar e instalar

Os próximos 2 passos, são muito simples — e envolvem o utilitário make.
Dentro do mesmo diretório em que se encontra descompactado o código, execute os seguintes comandos:

make
sudo make install

Ao fim do processo, execute o seu novo mpg123 (com sufixo, se você colocou um). 😉
Se quiser saber mais sobre como compilar e linkar programas, leia este pequeno tutorial.

Referências:

By Elias Praciano

Autor de tecnologia (livre, de preferência), apaixonado por programação e astronomia.
Fã de séries, como "Rick and Morty" e "BoJack Horseman".
Me siga no Twitter e vamos trocar ideias!

4 replies on “Como compilar e instalar o mpg123”

Olá, Elias, bom dia!
Estou tendo uma pequena dificuldade em compilar o mpg123 com sucesso, segui exatamente o modo que você explica, mas não sei o que está acontecendo, poderia me dizer algo sobre?
Meu Linux é Debian Jessie, e lembrando que instalando pelo apt-get consigo normalmente. Ao final da tentativa de ‘compilar’ aparece o seguinte:

make[2]: Nothing to be done for ‘install-exec-am’.
/bin/mkdir -p ‘/usr/local/share/man/man1’
/usr/bin/install -c -m 644 man1/mpg123.1 man1/out123.1 ‘/usr/local/share/man/man1’
/bin/mkdir -p ‘/usr/local/lib/pkgconfig’
/usr/bin/install -c -m 644 libmpg123.pc ‘/usr/local/lib/pkgconfig’

Não roda, essa é a parte onde é digitado make install, estranho, acredito que falte alguma coisa para conseguir finalizar.

Vamos ver, vou continuar tentando resolver, fim de semana tenho mais tempo, se resolver, mando um retorno aqui. Agradeço!.

Então, tente também rodar todos os comandos com privilégios administrativos: sudo make...
Se, ainda assim, não der, podemos tentar outra abordagem. 😉

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.