GNU/Linux >> Linux Esercitazione >  >> Linux

Errore di compilazione MPI:riferimento non definito a `sqrt' – Risolto

Domanda: Caro Techglimpse, Sto cercando di compilare un programma MPI (un semplice programma di esempio che calcola il valore PI) utilizzando MPICH versione 1.2.6. Di seguito è riportato il comando che ho usato per la compilazione:

mpicc -o a.out pi.c

Tuttavia, il comando non è riuscito con un messaggio di errore come "riferimento non definito a `sqrt' “. Ho verificato il codice e contiene math.h definito. Quale potrebbe essere il problema? – Surya

Il messaggio di errore dettagliato:

$ mpicc -o mpi-pi pi.c
/tmp/ccwuQwDw.o: In function `main':
pi.c:(.text+0x15f): undefined reference to `sqrt'
collect2: ld returned 1 exit status

Soluzione:

Surya, devi collegare la libreria di matematica durante la compilazione come di seguito indicato:

$ mpicc -o a.out pi.c -lm

Il libm.so si troverà in /usr/lib . Tuttavia, la posizione potrebbe variare da macchina a macchina.

$ whereis libm.so
libm: /usr/lib/libm.so /usr/lib/libm.a

Nell'opzione -lm , "l ' indica il prefisso 'lib' e 'm 'per la matematica.


Linux
  1. Gestione degli errori negli script Bash

  2. RT:Request Tracker – Errore:rt-mailgate – Errore del server non definito – 500 Impossibile connettersi o verificare il certificato [Risolto]

  3. Chiamata alla funzione non definita simplexml_load_file() – Errore PHP [risolto]

  4. Come risolvere Call to undefined function apc_fetch() – Errore irreversibile PHP [risolto]

  5. Errore Wi-Fi Wpa_supplicant?

Libusb riferimento indefinito a

Cos'è :-!! in codice C?

crt1.o:Nella funzione `_start':- riferimento non definito a `main' in Linux

Utilizzo di sqrtf() in C:riferimento non definito a `sqrtf'

riferimento non definito al simbolo "[email protetta]@GLIBC_2.4"

riferimento indefinito al simbolo errore '_ZN5boost6system15system_categoryEv'