पर mpi.h के लिए जी ++ या आईसीसी सेट अप करना मैंने कभी भी VS08 के बाहर कोई भी प्रमुख प्रोग्रामिंग नहीं किया है।उबंटू
मैं दो प्रासंगिक बनाने फ़ाइलों में से किसी एक के साथ LAMMPS नामक प्रोग्राम को संकलित करने का प्रयास कर रहा हूं। एक जी ++ कॉल करता है और अन्य आईसीसी (इंटेल का कंपाइलर) कहते हैं।
आईसीसी इस त्रुटि पैदा करता है:
icc -O -DLAMMPS_GZIP -DMPICH_SKIP_MPICXX -DFFT_FFTW -M write_restart.cpp > write_restart.d write_restart.cpp(15): catastrophic error: cannot open source file "mpi.h" #include "mpi.h"
और जी ++ इस त्रुटि
g++ -g -O -DLAMMPS_GZIP -DMPICH_SKIP_MPICXX -DFFT_FFTW -M verlet.cpp > verlet.d pointers.h:25: fatal error: mpi.h: No such file or directory compilation terminated.
mpi.h फ़ाइल में स्थित है फेंकता है/usr/lib/openmpi/शामिल
यह है मेरी समझ है कि मुझे उस $ PATH चर को सेट करने की आवश्यकता है जो
पढ़ता हैbash: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin:/opt/intel/bin:/usr/lib/openmpi/include:
और $ LD_LIBRARY_PATH जो वर्तमान में
/usr/lib/openmpi/lib:
अतः पढ़ता है, कैसे एक mpi.h फ़ाइल शामिल होते हैं? तो या तो आईसीसी या जी ++ इसे पाते हैं?
मेक फ़ाइल एक निष्पादन योग्य है कि तुरंत MPI_Comm_rank में साथ दुर्घटनाओं> गंभीर त्रुटि बाहर थूक MPI_Comm_rank (कॉम = 0x8e5bc0, रैंक = 0x2854d00) असफल MPI_Comm_rank (64) .: अमान्य संवाददाता – Mikhail
ठीक है, इसलिए मुझे "mpiC++" के बजाय "mpiC++। Mpich2" के रूप में सीसी सेट अप करते समय g ++ के साथ काम करने के लिए मिला। – Mikhail