On 2013-09-19, at 4:21 PM, Garth N. Wells <[email protected]> wrote:
> On 19 September 2013 21:13, Dominique Orban <[email protected]> wrote:
>>
>> On 2013-09-18, at 4:03 PM, Garth N. Wells <[email protected]> wrote:
>>
>>> On 18 September 2013 20:33, Johan Hake <[email protected]> wrote:
>>>> There are no documentation of what software versions you need. This should
>>>> be taken care of by CMake. If you for example need a higher version of some
>>>> software CMake should tell you that. You should also be able to look at:
>>>>
>>>> build/CMakeFiles/CMakeError.log
>>>>
>>>> to check why the SLEPC/PASTIX tests did not pass.
>>>>
>>>
>>> Unfortunately the SLEPc CMake tests are not very verbose - they do not
>>> leave a trail in CMakeError.log.
>>>
>>> PaStiX is notoriously difficult (I have also seen your message on the
>>> PaStiX list ;)), but should leave some info behind CMakeError.log.
>>
>> Actually, I missed this bit in the screen output:
>>
>> -- Performing Test PASTIX_TEST_RUNS
>> CMake Error: The following variables are used in this project, but they are
>> set to NOTFOUND.
>> Please set them or make sure they are set and tested correctly in the CMake
>> files:
>> RT_LIBRARY
>> linked by target "cmTryCompileExec4032762153" in directory
>> /tmp/dolfin/build/CMakeFiles/CMakeTmp
>>
>>
>> It looks like CMake is looking for librt. A quick search reveals that it may
>> not be relevant on OSX:
>>
>> https://github.com/wjwwood/serial/issues/24
>> http://dev.deluge-torrent.org/ticket/37
>> http://goo.gl/X2LVXu (see the answer with 8 points).
>>
>> That may explain why PaSTiX isn't detected... ?!
>>
>
> Very likely. You could try putting a test in FindPaStiX.cmake to only
> look for librt on non-OSX systems.
I don't speak CMake but this seems to do it:
diff --git a/cmake/modules/FindPaStiX.cmake b/cmake/modules/FindPaStiX.cmake
index 1b53fa7..be2f60a 100644
--- a/cmake/modules/FindPaStiX.cmake
+++ b/cmake/modules/FindPaStiX.cmake
@@ -24,7 +24,7 @@ find_library(PASTIX_LIBRARY pastix
set(PASTIX_LIBRARIES ${PASTIX_LIBRARY})
-if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
+if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU" AND NOT APPLE)
# Check for rt library
find_library(RT_LIBRARY rt
DOC "The RT library"
Now everything is correctly detected and compilation almost completes. It gets
stuck here:
--
[ 95%] Swig source
Scanning dependencies of target _la
[ 97%] Building CXX object
dolfin/swig/modules/la/CMakeFiles/_la.dir/modulePYTHON_wrap.cxx.o
Linking CXX shared module _la.so
Undefined symbols for architecture x86_64:
"dolfin::LinearOperator::LinearOperator(void const**)", referenced from:
SwigDirector_LinearOperator::SwigDirector_LinearOperator(_object*) in
modulePYTHON_wrap.cxx.o
SwigDirector_LinearOperator::SwigDirector_LinearOperator(_object*) in
modulePYTHON_wrap.cxx.o
"dolfin::LinearOperator::LinearOperator(void const**, dolfin::GenericVector
const&, dolfin::GenericVector const&)", referenced from:
SwigDirector_LinearOperator::SwigDirector_LinearOperator(_object*,
dolfin::GenericVector const&, dolfin::GenericVector const&) in
modulePYTHON_wrap.cxx.o
SwigDirector_LinearOperator::SwigDirector_LinearOperator(_object*,
dolfin::GenericVector const&, dolfin::GenericVector const&) in
modulePYTHON_wrap.cxx.o
"dolfin::PETScLinearOperator::PETScLinearOperator(void const**)", referenced
from:
SwigDirector_PETScLinearOperator::SwigDirector_PETScLinearOperator(_object*) in
modulePYTHON_wrap.cxx.o
SwigDirector_PETScLinearOperator::SwigDirector_PETScLinearOperator(_object*) in
modulePYTHON_wrap.cxx.o
"dolfin::uBLASLinearOperator::uBLASLinearOperator(void const**)", referenced
from:
SwigDirector_uBLASLinearOperator::SwigDirector_uBLASLinearOperator(_object*) in
modulePYTHON_wrap.cxx.o
SwigDirector_uBLASLinearOperator::SwigDirector_uBLASLinearOperator(_object*) in
modulePYTHON_wrap.cxx.o
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
make[2]: *** [dolfin/swig/modules/la/_la.so] Error 1
make[1]: *** [dolfin/swig/modules/la/CMakeFiles/_la.dir/all] Error 2
make: *** [all] Error 2
---
Looks like some libraries may be missing. I'm using the latest of everything
from the git repos.
Thanks!
Dominique
_______________________________________________
fenics-support mailing list
[email protected]
http://fenicsproject.org/mailman/listinfo/fenics-support