Este artigo foi originalmente publicado no meu site:
http://www.slackjeff.com.br
Antes começar a compilação é muito importante criarmos um diretório específico somente para isto. Eu sempre utilizo dois diretórios onde faço todo os processos.
- o primeiro diretório fica dentro do meu home, e se chama 'src';
- o segundo fica dentro dos temporários ou para os mais chegados 'tmp', uma pasta chamada 'build', lá dentro é onde normalmente acontece os meus empacotamentos manuais!
Eu tenho uma variável global chamada 'src' e outra 'compi', então para não precisar sempre ficar chamando todo diretório '~/src' e '/tmp/build' eu somente chamo as variáveis '$src' e '$compi', mais prático não é?
Então o primeiro passo é criar estes diretórios caso você não o tenha, se preferir chamá-los de outro nome fique a vontade.
Primeiramente vamos criar os diretórios em sua '/home/usuario' e '/tmp'.
mkdir /tmp/build
$ mkdir ~/src
Após isto vamos criar as variáveis e para finalizar vamos exportar elas para ficar disponível em qualquer terminal, ou console.
Criando a variável 'src' e 'compi':
compi="/tmp/build"
$ src="/home/slackjeff/src"
Agora vamos exportá-las:
export $compi
$ export $src
Caso deseje sempre carregar estas variáveis como uma variável ambiente, faça o seguinte. Abra o
/etc/profile com seu editor favorito e as declare.
É interessante também fazer um comentário para ficar mais atrativo para depois você não ficar perdido! Acontece.
# nano /etc/profile
Na última linha insira o comentário, lembre que um comentário deve começar com '#' tralha, e na linha debaixo exporte e declarar a variável 'compi' ou o nome da sua preferência.
# Variável para meu build
export src="/home/slackjeff/src"
export compi="/tmp/build"
Pronto, na próxima inicialização do sistema esta variável se tornará ambiente e sempre será carregada no boot.
Caso queira deixar esta variável disponível apenas para o seu usuário, faça o mesmo procedimento no '.bashrc', que está localizado em seu 'home'.
Caso opte pelo .bashrc não esqueça de remover no /etc/profile.
Ótimo, nosso próximo passo agora é desempacotar o nosso fonte dentro do nosso diretório src, que está localizado em nossa home.
Então vamos brincar, vamos desempacotar já enviando para '/home/slackjeff/src' o meu ambiente de compilação, lembrando que não precisa de root, não utilize ele em vão!
Neste exemplo irei usar o fonte "fictício" do leafpad.
cd ~/Downloads && tar -xvf leafpad.tar.gz -C "$src" && cd "$src" && ls
NOTA: eu utilizo sempre aspas duplas "", para não ter problema da variável expandir e estar nula por exemplo, não vai ter problemas neste caso, mas é sempre interessante você usar e se acostumar a sempre utilizar as aspas.
Outro ponto que vale a pena ser falado é sobre o && ou 'E COMERCIAL'.
É mais inteligente utilizar este cara que o ; 'PONTO E VIRGULA', mas porque Jefferson?
Simples, com && ele só executará o segundo comando se o primeiro ter status de saída '0' ou simplificando, não tendo erros.
Se o status for diferente de '0' ele não continuará, diferentemente do ';' que por sua vez continua mesmo tendo falhado o comando anterior.
Como já listamos o diretório '/home/slackjeff/src', sabemos que nosso source está em uma pasta chamada 'leafpad', vamos entrar nesta pasta agora e ir para o próximo tópico.