Artigo com as tags " programas"
fev
2
2010

Compilando Programas no Debian.

A questão de compilar os programas para que possa ser otimizado para a arquitetura do nosso computador é uma idéia muito boa se queremos ganhar em velocidade do sistema. Já que foi feito um artigo de como compilar programas no Arch linux, vamos aprender agora como fazer isso no Debian.

No Debian se far isso de uma forma bem mais simples, com a ferramenta apt-build podemos compilar programas e até o sistema todo, como pode ser feito no Arch também.

Primeiro, vamor ter que instalar o apt-build:

# apt-get install apt-build

Com o apt-build instalado estamos preparado para começar a compilar os programas. Lembrando que o arquivo de configuração do apt-build fica é o apt-build.conf que fica em /etc/apt/apt-build.conf que tem o seguinte conteúdo:

build-dir = /var/cache/apt-build/build
repository-dir = /var/cache/apt-build/repository
Olevel = -O3
mtune = -mtune=k8
options = " "
make_options = " "

Os diretórios que estão no build-dir e repository-dir tem que ter bastante espaço livre.

Feito a configuração, a compilação é muito simples, basta fazermos o seguinte:

# apt-build install iceweasel

Com isso vamos instalar o iceweasel(o firefox do Debian) e as suas dependêcias também, isso facilita muito, pois basta fazermos um comando que vamos instalar o programa compilado juntamente com as dependências que precisa.

Outra opção que nós temos é baixar os sources dos pacotes que queremos, modificá-los e depois instalá-los, para isso:

# apt-build source iceweasel

Assim, irá baixar todos os arquivos necessários para compilação no Debian, todos os arquivos serão baixados no diretório que esta no build-dir que esta no arquivo build.conf que vimos mais acima.

Depois é só ir no diretório que estão os arquivos que você modificou e instalar:

# apt-build install pacote_que_você_modificou

E a última opção é o apt-build world como pode imaginar, vamos compilar o sistema inteiro, para isso temos que fazer:

# apt-build world

Mas quando digitamos esse comando ele aparece que devemos ler o README.Debian primeiro, e quando vamos ver esse arquivo, nos diz que devemos fazer uma lista de pacotes para ser compilado. Para fazermos esse lista de pacotes, basta usarmos o comando abaixo:

# dpkg --get-selections | awk '{if ($2 == "install") print $1}' > /etc/apt/apt-build.list

Ok, com a lista dos pacotes ja feita, podemos dar o comando apt-build world novamente e começar a brincadeira.

Espero que a dica possa ser útil para vocês como foi para mim!

Abraços

[ad code=2 align=center]

jan
12
2010

Compilando programas no Arch linux.


Para aqueles que usam o Arch linux, sabe da velocidade e agilidade do sistema, mas podemos fazer ele ficar um pouco mais rápido do que ele ja é, como? compilando os programas que mais usamos. E isso é muito mais facíl do Arch linux, com o abs.

Para fazermos isso, vamos seguir os passos a seguir: (lembrando que essa dica me foi ensinada pelo meu amigo Victor Bastos, valew! :D )

01 – Vamos instalar o abs:

# pacman -S abs

02 – Agora vamos rodar o abs para copiar os arquivos necessários de todos os pacotes dos repositórios para o nosso hd:

$ abs

Foi criada uma pasta abs em /var/abs que esta todas as pastas com os seus respeitos pacotes e arquivos.

03 – Eu tenho um core2duo com o Arch 64bits, tive que modificar o meu arquivo /etc/makepkg.conf para o meu processador, o meu arquivo esta assim (so precisa alterar a parte que esta abaixo):

#########################################################################
# ARCHITECTURE, COMPILE FLAGS
#########################################################################
#
CARCH="x86_64"
CHOST="x86_64-unknown-linux-gnu"
#-- Exclusive: will only run on x86_64
# -march (or -mcpu) builds exclusively for an architecture
# -mtune optimizes for an architecture, but builds for whole processor family
CFLAGS="-march=core2 -O2 -pipe"
CXXFLAGS="${CFLAGS}"
LDFLAGS="-Wl,--hash-style=gnu -Wl,--as-needed"
#-- Make Flags: change this for DistCC/SMP systems
MAKEFLAGS="-j3"

Para distribuições em 32bits, segue a configuração para o core2duo:

#########################################################################
# ARCHITECTURE, COMPILE FLAGS
#########################################################################
#
CARCH="i686"
CHOST="i686-pc-linux-gnu"
#-- Exclusive: will only run on -march=i686
# -march (or -mcpu) builds exclusively for an architecture
# -mtune optimizes for an architecture, but builds for whole processor family
#Copiei da net esta configuração para core2duo
CFLAGS="-O2 -march=core2 -pipe -fomit-frame-pointer -mfpmath=sse -mmmx -msse -msse2 -msse3 -mssse3"
CXXFLAGS="${CFLAGS}"
#-- Make Flags: change this for DistCC/SMP systems
# Numero de cores +1
MAKEFLAGS="-j3"

Fazendo as alterações acima do /etc/makepkg.conf você esta pronto pata começar a compilar os programas.

04 – Vamos tomar como exemplo o firefox, ele é composto pelo programa xulrunner e o firefox, então, temos que compilar os dois. Vá até a pasta /var/abs/extra/ e copie a pasta xulrunner. Crie uma pasta chamado “abs” por exemplo na sua home, e cole a pasta xulrunner na pasta abs que você acabou de criar. Agora faça a mesma coisa com a pasta firefox, que esta na mesma pasta /var/abs/extra.

05 – Agora podemos começar a compilação, para isso faça o seguinte no terminal:

$ cd /home/abs/xulrunner
$ makepkg
# pacman -U xulrunner-xxxxx.pkg.tar.gz

(Onde xxxxx é o número da versão que foi compilada, é só dar um ls na pasta para ver o nome completo do arquivo.)

06 – Ele vai começar o processo de compilação do programa, ele vai baixar o source do firefox também, que terá o nome de firefox-3-5-7-xxxx.tar.bz2. Terminado o processo de compilação do xulrunner entre na pasta /home/abs/xulrunner e copie o arquivo do firefox que foi baixado e cole dentro da pasta do firefox na sua home que esta em /home/abs/firefox. Feito isso estamos prontos para compilar o firefox:

$ cd /home/abs/firefox
$ makepkg
# pacman -U firefox-3.5.xxxxx.pkg.tar.gz

Pronto! Terminado todo processo acima, ja temos o firefox compilado e instalado, aí é só abrir o firefox e sentir as mudanças, dê uma olhada no consumo de ram também, que deve ter diminuido bastante.

É isso aí por hoje, qualquer dúvida envie um comentários que procuraremos te ajudar.

Agradecimentos: Victor Bastos

Parceiros

  • A Casa do Linux Escola que oferece excelentes cursos na área de software livre.
  • C# Brasil Blog com muitas dicas interessantes sobre C#, ASP.NET, WinForm, WebForm, AJAX e muito mais.
  • Epidemic GNU/Linux Website da distribuição linux baseada no Debian testing.
  • Projetos e TI Site com informações, dicas, tutorias sobre vários aspectos no ramo da TI.
  • Sempre Update Blog com diversas informações sobre o mundo do software livre.
  • SUD.tvieira.net Blog com conteúdo sobre A Igreja de Jesus Cristo dos Santos dos Últimos Dias.

Feedburner

Cadastre o seu e-mail abaixo e receba as atualização do blog:

Facebook

Lista de Links

  • Br-Linux Blog sobre o que rola no mundo do software livre.
  • Dicas-L Site com várias dicas sobre linux.
  • Distrowatch Site com informações de várias distribuições linux e com o rank de distribuições mais conhecido no mundo linux.
  • Notícias Linux Site com notícias sobre o mundo linux.
  • Viva o Linux Site com muitas informações como dicas e tutoriais sobre linux.