27.12.2014 Views

QLogic OFED+ Host Software User Guide, Rev. B

QLogic OFED+ Host Software User Guide, Rev. B

QLogic OFED+ Host Software User Guide, Rev. B

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

F–Troubleshooting<br />

<strong>QLogic</strong> MPI Troubleshooting<br />

Compiler/Linker Mismatch<br />

If the compiler and linker do not match in C and C++ programs, the following error<br />

message appears:<br />

$ export MPICH_CC=gcc<br />

$ mpicc mpiworld.c<br />

/usr/bin/ld: cannot find -lmpichabiglue_gcc3<br />

collect2: ld returned 1 exit status<br />

Compiler Cannot Find Include, Module, or Library Files<br />

RPMs can be installed in any location by using the --prefix option. This can<br />

introduce errors when compiling, if the compiler cannot find the include files (and<br />

module files for Fortran 90 and Fortran 95) from mpi-devel*, and the libraries<br />

from mpi-libs*, in the new locations. Compiler errors similar to the following<br />

appear:<br />

$ mpicc myprogram.c<br />

/usr/bin/ld: cannot find -lmpich<br />

collect2: ld returned 1 exit status<br />

NOTE:<br />

As noted in the <strong>QLogic</strong> Fabric <strong>Software</strong> Installation <strong>Guide</strong>, all development<br />

files now reside in specific *-Devel subdirectories.<br />

On development nodes, programs must be compiled with the appropriate options<br />

so that the include files and the libraries can be found in the new locations. In<br />

addition, when running programs on compute nodes, you need to ensure that the<br />

run-time library path is the same as the path that was used to compile the<br />

program.<br />

The following examples show what compiler options to use for include files and<br />

libraries on the development nodes, and how to specify the new library path on<br />

the compute nodes for the runtime linker. The affected RPMs are:<br />

• mpi-devel* (on the development nodes)<br />

• mpi-libs* (on the development or compute nodes)<br />

For the examples in “Compiling on Development Nodes” on page F-15, it is<br />

assumed that the new locations are:<br />

/path/to/devel (for mpi-devel-*)<br />

/path/to/libs (for mpi-libs-*)<br />

F-14 D000046-005 B

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!