Instalar Tcl no CentOS 7

Apesar de pouco freqüente, de vez em quando eu utilizo a Tcl para criar e rodar alguns scripts de linha de comando em servidores linux e também, de vez em quando, escrevo algumas funções para o PostgreSQL utilizando a linguagem procedural PL/Tcl.

A versão da Tcl que vem por padrão no CentOS 7.1 é a Tcl 8.5.13. Sou adepto de sempre usar os pacotes disponíveis nas distribuições linux, não instalando nada por conta própria, mas a Tcl (e o PostgreSQL) são exceções: eu sempre baixo os fontes e compilo as versões mais novas.

Assim, para instalar a última versão disponível da Tcl, a 8.6.4, faça o seguinte:

  1. No site da Tcl/Tk (http://www.tcl.tk) baixe o fonte da última versão (hoje em dia é a 8.6.4, procure pelo arquivo “tcl8.6.4-src.tar.gz”), e salve no diretório /usr/local/src.
  2. Descompacte o códio fonte e vá para o diretório /usr/local/src/tcl8.6.4/unix.
  3. Execute o seguinte comando configure:
    ./configure --prefix=/usr/local/lib/tcl8.6.4 --enable-threads --enable-64bit
  4. Se o comando configure não retornar nenhum erro, execute o comando make.
  5. Se o comando make não retornar nenhum erro, execute o comando make test. Se os testes de compilação foram concluídos com sucesso, você verá a seguinte mensagem:
    Tests ended at Wed Sep 23 22:28:32 BRT 2015
    all.tcl: Total 116     Passed 116     Skipped 0     Failed 0
  6. Agora execute o make install. A Tcl será instalada no diretório /usr/local/lib/tcl8.6.4.
  7. Crie os seguintes links simbólicos (digite cada comando em uma única linha!):
    ln -s /usr/local/lib/tcl8.6.4/bin/tclsh8.6 /usr/local/lib/tcl8.6.4/bin/tclsh
    
    ln -s /usr/local/lib/tcl8.6.4/bin/tclsh8.6 /usr/local/bin/tclsh
  8. Edite o arquivo .bashrc dos usuários que utilizarão a Tcl e altere a variável:
    export LD_LIBRARY_PATH=/usr/local/lib/tcl8.6.4/lib:$LD_LIBRARY_PATH
  9. Por fim, teste se a Tcl está instalada e se é thread-safe (tem que retornar 1):
    [usuario@servidor ~]$ tclsh
    % info exists tcl_platform(threaded)
    1
    % exit

Agora você já tem a versão mais nova da Tcl instalada, compilada para 64 bits e thread-safe.

Leave a Reply