Am încercat să compilez programul Hello World în C, în interiorul Eclipse PTP, dar îmi dă o eroare legată de mpi.h
.
Am inclus /usr/local/include
și /usr/local/lib
în căile mele de acces și am încercat, de asemenea, să execut o căutare cu find / -name mpi.h
. Tot primesc un Nu există un astfel de fișier sau director eroare.
Am încercat să instalez mpich2
, dar tot nu am putut găsi mpi.h
.
De asemenea:
- Nu există nici un folder în interiorul fișierului
include
de ce se întâmplă asta? - Pot găsi
mpicc
la/usr/bin/mpicc
Aceeași problemă apare atunci când încerc să compilez proiectul ca și cod C++. Ce ar trebui să fac?
- Ce sistem de operare? Probabil că nu aveți instalat ceva de genul mpi-devel sau un pachet similar care să includă anteturile. – > Por thrig.
- centos 6.7 folosesc eclipse PTP ( parallel Tool Plateform ) – > Por Dalia Shouman.
Această întrebare Stack Overflow răspunde la întrebarea ta.
Conform yum
, , se poate spune că mpi.h
fișierul antet este furnizat de următoarele pachete:
$ yum whatprovides '*/mpi.h'
openmpi-devel-1.8.1-1.el6.x86_64
mpich2-devel-1.2.1-2.3.el6.x86_64
mvapich2-devel-2.0rc1-1.el6.x86_64
mvapich-devel-1.2.0-0.3563.rc1.5.el6.x86_64
mvapich2-psm-devel-2.0rc1-1.el6.x86_64
mpich-devel-3.1-4.el6.x86_64
mvapich-psm-devel-1.2.0-0.3563.rc1.5.el6.x86_64
Am eliminat cea mai mare parte a ieșirii, precum și i686
versiuni. Alegeți pachetul în funcție de ceea ce (varianta) cu care încercați să lucrați. 🙂
Rețineți că majoritatea acestor pachete creează un subdirectoriu în /usr/include
atunci când sunt instalate. De exemplu, pachetul mpi.h
furnizat de openmpi-devel
este disponibil la /usr/include/openmpi-x86_64/mpi.h
, , ceea ce înseamnă că va trebui fie să includeți openmpi-x86_64/mpi.h
în codul sursă, fie să adăugați fișierul /usr/include/openmpi-x86_64
la căile de includere.
De asemenea: unele dintre aceste pachete (cum ar fi mvapich-devel
) nici măcar nu folosesc /usr/include
deloc, și își pun anteturile sub /usr/lib64/{package}/include/
.