O FreeBSD vem com uma grande coleção de softwares que já foram portados para o FreeBSD. Para descobrir se um software já foi portado para o FreeBSD, você pode ir para freshports.org e usar o página de pesquisa .
Usando pacotes
Desde o FreeBSD 10 existe o novo gerenciador de pacotes pkgng , que traz muitos novos recursos para o FreeBSD. Por exemplo, para procurar uma porta.
$ pkg search -o erlang
lang/erlang
databases/erlang-mysql
lang/erlang-runtime15
lang/erlang-runtime16
net/erlang_xmlrpc
Então, vemos que o Erlang já foi portado para o FreeBSD e poderíamos instalá-lo apenas com
pkg install lang/erlang
Usando Portas
Como alternativa, há a árvore de portes em /usr/ports
, onde você pode receber automaticamente o código-fonte de uma porta e compilá-lo e instalá-lo.
A árvore de ports nem sempre é instalada, pois pode ocupar um pouco de espaço.
Então, se /usr/ports
estiver vazio, primeiro você precisa instalar a árvore de ports.
# portsnap fetch
# portsnap extract
Dentro da árvore de ports você pode pesquisar com
#cd /usr/ports/
#make quicksearch name="erlang"
...
Port: erlang-16.b.03.1,3
Path: /usr/ports/lang/erlang
Info: A functional programming language from Ericsson
...
ou instale software usando o caminho da pesquisa
#cd /usr/ports/lang/erlang/
#make install clean
Usar portas para instalar e atualizar programas é um pouco mais difícil do que usar o pkgng e agora um iniciante deve usar pkgng over ports.
Tanto o pacote quanto as portas cuidam de todas as dependências que um pacote ou porta precisa, portanto, se você instalar o Erlang, ele também instalará o OpenSSL e o Perl e você não precisará fazer mais nada. As portas também instalam o software necessário para construí-lo. Para Erlang, isso adiciona o Gnu à lista.
Você deve ler o capítulo 5 do FreeBSD Handbook it explica muito mais sobre portas e pacotes e está bem escrito e disponível em vários idiomas.