Alô usuários Fortran...
Depois de muito quebrar a cabeça para instalar o ifort (l_cprof_p_11.1.059_intel64.tgz) no Ubuntu 9.10, sem sucesso, eu agora consegui que ele ficasse 100% no meu lap. Segue ai um mine tutorial para a instalação. Vale para a versão 32 tbm...
PS: Estou mostrando passo a passo como eu fiz aqui no meu lap...
Primeiro passo: Baixar o arquivo l_cprof_p_11.1.059_intel64.tgz so site da intel (
http://software.intel.com/en-us/articles/non-commercial-software-development/). Lá vc pega um "Serial Number" (SN) que será necessário para a instalação.
Segundo passo: descompacte o arquivo l_cprof_p_11.1.059_intel64.tgz em um local qualquer. Eu aqui fiz isso na pasta Downloads.
Terceiro passo: Verifique se as seguintes dependências estão instaladas:
g++
Iniciando a instalação:
Entre na pasta descompactada (/l_cprof_p_11.1.059_intel64) usando o terminal. Em seguida use o comando:
# sudo ./instal.shNão se esqueça do SN...
Passo 1/7: Apresentação
Passo 2/7: 1. View the license agreement. Vá até o final e digite: “accept”
Passo 3/7: 1. Ativação da licença.
É aqui que é necessário o SN.
Passo 4/7: 1. Typical Install.
O instalador checa os pré-requisitos.
Em seguida aparece a seguinte mensagem de erro:
Missing critical pre-requisite
-- 32-bit libraries not found
não pode ser encontrado:
libstdc++
libstdc++5
glibc
libgcc
O problema é que essas bibliotecas são ultrapassadas na versão 9.10. Porém, seguindo o tópico:
http://pastebin.software.intel.com/en-us/forums/intel-fortran-compiler-for-linux-and-mac-os-x/topic/69247/reply/98963/poderemos solucionar nosso problema.
Lá o autor diz para instalarmos as bibliotecas atualizadas e depois simplesmente criar links dinâmicos para tentar enganar o instalador... Vamos ver se isso funciona...
Criando os links (em outra aba):
# sudo ln -s /usr/lib32/libstdc++.so.6 /usr/lib32/libstdc++.so.5
# sudo ln -s /usr/lib64/libstdc++.so.6 /usr/lib64/libstdc++.so.5De volta a primeira aba (instalador):
Saia do instalador e repita os passos 1-4, acima. No meu sistema aparece agora as seguintes mensagens de erro:
Missing optional pre-requisite
-- No compatible Java* Runtime Environment (JRE) found
-- operating system type is not supported.
-- system glibc or kernel version not supported or not detectable
-- binutils version not supported or not detectableVamos ignorar isso por enquanto. Dê enter e aparecerá:
Activation Type:
Existing License File
Component(s):
Intel(R) Fortran Compiler Professional Edition for Linux*
Intel(R) Fortran Compiler for applications running on Intel(R) 64
Intel(R) Debugger for applications running on Intel(R) 64
Intel(R) Math Kernel Library for applications running on Intel(R) 64
Location:
/opt/intel/Compiler/11.1/059
Install Mode:
NONRPMEm seguida a opção: 1. Install
Espere a instalação ser concluída e em seguida “Enter” para sair... Pronto! Está instalado. Metade do caminho concluído.
Eu gosto de criar um link para o compilador, tipo “f90”. Para isso usaremos o seguinte comando:
# ln -s /opt/intel/Compiler/11.1/059/bin/intel64/ifort /usr/local/bin/f90Caso queira, troque f90 por outro comando no qual vc está mais familiarizado. Agora você pode compilar usando o comando f90 -o nome_do_executável nome_do_programa (nome_do_programa geralmente com a extensão .f90).
Ainda não terminou. Agora, quando tento compilar algo aparece a mensagem de erro:
/opt/intel/Compiler/11.1/059/bin/intel64/fortcom: /usr/lib/libstdc++.so.5: version `CXXABI_1.2' not found (required by /opt/intel/Compiler/11.1/059/bin/intel64/fortcom)
/opt/intel/Compiler/11.1/059/bin/intel64/fortcom: /usr/lib/libstdc++.so.5: version `GLIBCPP_3.2' not found (required by /opt/intel/Compiler/11.1/059/bin/intel64/fortcom)
Veja o seguinte: usando o comando
# strings /usr/lib64/libstdc++.so.5 | grep CXXABIteremos o retorno:
CXXABI_1.3
CXXABI_1.3.1
CXXABI_1.3.2
CXXABI_1.3.3Vamos agora ao último passo.
Entre no link:
http://packages.ubuntu.com/jaunty/libstdc++5, faça o download e instale em seu PC. Em seguida crie novos links simbólicos:
# ln -sf /usr/lib/libstdc++.so.5.0.7 /usr/lib32/libstdc++.so.5
# ln -sf /usr/lib/libstdc++.so.5.0.7 /usr/lib64/libstdc++.so.5Note agora que o comando
# strings /usr/lib64/libstdc++.so.5 | grep CXXABIretorna:
CXXABI_1.2
CXXABI_1.2.1
CXXABI_1.2.2Que é a dependência que o ifort requer. Tente compilar algum programa... O meu aqui ficou 100%.
É isso ai...