Nel compilare ed eseguire i programmi si possono dare alcuni problemi. Anche se la compilazione va a buon fine, nell'esecuzione del programma si può avere il seguente errore > ./a.out: error while loading shared libraries: libcxa.so.5: cannot open shared object file: No such file or directory in questo caso c'è una soluzione provvisoria, ma semplice, che consiste nello scrivere il seguente comando export LD_LIBRARY_PATH=/opt/intel_fc_80/lib Questo vale solo per la sessione in corso, per una soluzione definitiva, vi suggerisco di copiare le istruzioni (i) scritte sotto e inserirle nel vostro .bashrc Nota: per creare o modificare un file basta scrivere >emacs nomefile (es. emacs .bashrc) ISTRUZIONI PIÙ DETTAGLIATE echo $SHELL ---> /bin/bash vuol dire che siamo utenti bash ---> vuol dire che siamo utenti tcsh e per controprova dare echo $shell ---> /bin/csh oppure /bin/tcsh Altri casi non si danno. ==== Istruzioni per utenti bash 1) Se non c'è il file ~/.bashrc, crearlo mettendoci le righe seguenti if [ -z "$LD_LIBRARY_PATH" ]; then LD_LIBRARY_PATH=/opt/intel_fc_80/lib elif [[ "$LD_LIBRARY_PATH" != */opt/intel_fc_80/lib* ]]; then LD_LIBRARY_PATH=/opt/intel_fc_80/lib:"$LD_LIBRARY_PATH" (i) fi export LD_LIBRARY_PATH case "$PATH" in .:*|*:.|*:.:*) : ;; *) PATH=.:"$PATH" ;; esac 2) Se c'è già il file ~/.bashrc, aggiungervi la (i) in un posto opportuno, in modo che venga eseguita sempre, anche quando la shell non è interattiva. (Se avete già il file, ve lo siete scritto e quindi sapete come l'avete strutturato) ==== Istruzioni per utenti tcsh Avete sicuramente il file .cshrc. Se avete tenuto quello di default, a un certo punto vi si parla del file ~/.user-startup, che probabilmente non avete. Createvelo con le righe seguenti if ( $?LD_LIBRARY_PATH ) then setenv LD_LIBRARY_PATH /opt/intel_fc_80:"$LD_LIBRARY_PATH" else setenv LD_LIBRARY_PATH /opt/intel_fc_80 endif (ii) set dotfound=0 foreach a ( $path ) if ( $a == . ) set dotfound=1 end if ( $dotfound == 0 ) set path=( . $path )