MantisBT - CMake | |||||
View Issue Details | |||||
ID | Project | Category | View Status | Date Submitted | Last Update |
0008035 | CMake | CMake | public | 2008-11-06 06:52 | 2009-01-07 14:57 |
Reporter | Jed K Brown | ||||
Assigned To | Brad King | ||||
Priority | normal | Severity | major | Reproducibility | always |
Status | closed | Resolution | no change required | ||
Platform | OS | OS Version | |||
Product Version | CMake-2-6 | ||||
Target Version | Fixed in Version | ||||
Summary | 0008035: Make find_library() check PATHS before system directories | ||||
Description | I have /usr/lib/libparmetis.a (built using Open MPI 1.2.8) /opt/mpich2/lib/libparmetis.a (built using MPICH2 1.1.0a1) While these define and reference all the same symbols, they are *not* ABI-compatible. For instance sizeof(MPI_Comm) is different. If the wrong version is linked, we will not get any warnings by the build system, but the executable will seg-fault. # resolves (incorrectly) to /usr/lib/libparmetis.a find_library (PARMETIS_LIB parmetis PATHS /opt/mpich2/lib) # resolves to /opt/mpich2/lib/libparmetis.a find_library (PARMETIS_LIB parmetis HINTS /opt/mpich2/lib) Many modules use PATHS for what HINTS is intended for, and will resolve all subcomponents to the wrong library when trying to find a version in a non-standard location. The documentation says PATHS should be searched before system directories. | ||||
Steps To Reproduce | |||||
Additional Information | |||||
Tags | No tags attached. | ||||
Relationships | |||||
Attached Files | |||||
Issue History | |||||
Date Modified | Username | Field | Change | ||
2008-11-06 06:52 | Jed K Brown | New Issue | |||
2009-01-07 14:36 | Bill Hoffman | Status | new => assigned | ||
2009-01-07 14:36 | Bill Hoffman | Assigned To | => Brad King | ||
2009-01-07 14:57 | Brad King | Note Added: 0014478 | |||
2009-01-07 14:57 | Brad King | Status | assigned => closed | ||
2009-01-07 14:57 | Brad King | Resolution | open => no change required |
Notes | |||||
|
|||||
|
|