MOAB and FluDAG installation error

Dear Fluka experts,
I am following the steps to install the FluDAG tool. I am trying to install MOAB using the package manager install route written on https://svalinn.github.io/DAGMC/install/dependencies.html page. In particular, when I write this command


the following error comes out:
configure: error: LAPACK library not found
How can I solve this problem?

Best regards,
Lovepreet

Hello,

I received a similar configuration error while installing FluDAG’s dependencies and installing LAPACK with this command:

sudo apt-get install liblapack-dev

solved the configuration error.

Best regards,
Nikos.

Thank you for your reply. I partially solved the problem. Now, I have this problem:

rm: cannot remove 'src/moab/EntityHandle.hpp': Too many levels of symbolic links
mv: failed to access 'src/moab/EntityHandle.hpp': Too many levels of symbolic links
config.status: error: could not create src/moab/EntityHandle.hpp

Have you seen it before as well?

Best regards,
Lovepreet

You could delete the MOAB directory with rm -rf MOAB, then repeat the installation process under the ‘MOAB Installation’ section of the link you provided and see if the same error persists.

Best regards,
Nikos.

Apparently, I have solved the issue. However, when I use $ which h5ls $ which mbconvert it doesn’t give me any output. So, maybe it hasn’t been installed?
This because when I go to the 2nd step to configure FluDAG


It tells me

-- CMAKE_BUILD_TYPE not specified, defaulting to Release
-- CMAKE_BUILD_TYPE: Release


CMake Error at cmake/FindMOAB.cmake:7 (string):
  string sub-command REPLACE requires at least four arguments.
Call Stack (most recent call first):
  CMakeLists.txt:57 (find_package)


CMake Error at cmake/FindMOAB.cmake:17 (message):
  Could not find MOAB.  Set -DMOAB_DIR=<MOAB_DIR> when running cmake or use
  the $MOAB_DIR environment variable.
Call Stack (most recent call first):
  CMakeLists.txt:57 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/lovepreet/dagmc_bld/DAGMC/bld/CMakeFiles/CMakeOutput.log".

So, I think there has been a problem during the installation.

Best regards,
Lovepreet

UPDATE:
I tried the other way with the source and the previous command seems to work. However, I have these errors:

CMake Error: CMake can not determine linker language for target: pyne_dagmc-shared
CMake Error in src/pyne/CMakeLists.txt:
  Exporting the target "pyne_dagmc-shared" is not allowed since its linker
  language cannot be determined


CMake Error: CMake can not determine linker language for target: pyne_dagmc-shared
CMake Error in src/pyne/CMakeLists.txt:
  Exporting the target "pyne_dagmc-shared" is not allowed since its linker
  language cannot be determined


CMake Error: CMake can not determine linker language for target: pyne_dagmc-static
CMake Error in src/pyne/CMakeLists.txt:
  Exporting the target "pyne_dagmc-static" is not allowed since its linker
  language cannot be determined


CMake Error: CMake can not determine linker language for target: pyne_dagmc-static
CMake Error in src/pyne/CMakeLists.txt:
  Exporting the target "pyne_dagmc-static" is not allowed since its linker
  language cannot be determined


CMake Error: Cannot determine link language for target "pyne_dagmc-static".
CMake Error: Cannot determine link language for target "pyne_dagmc-shared".
-- Generating done
-- Build files have been written to: /home/lovepreet/dagmc_bld/DAGMC/bld

Best regards,
Lovepreet

Hello again @Singh,

I am using the CERN branch from ‘makeclean’ and not the one from ‘svalinn’. Replacing the associated commands of the installation guide with the ones I provide below should clone CERN’s branch by makeclean.

$ mkdir DAGMC

$ cd DAGMC

$ git clone https://github.com/makeclean/DAGMC.git

$ cd DAGMC

$ git checkout fluka-cern

I also have to add that I am a novice in DAGMC, perhaps other more experienced users in the forum can offer more help if needed.

Best regards,
Nikos.

Thanks again for your reply. I tried your suggestion, but the erorrs are the same.
I copy here all the lines that come out from the command

$ cmake ../src -DMOAB_DIR=$HOME/dagmc_bld/MOAB \
               -DBUILD_FLUKA=ON \
               -DFLUKA_DIR=$FLUPRO \
               -DCMAKE_INSTALL_PREFIX=$INSTALL_PATH
-- The C compiler identification is GNU 7.5.0
-- The CXX compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Git: /usr/bin/git (found version "2.17.1")
-- Submodule update
Submodule 'src/pyne/pyne' (https://github.com/pyne/pyne) registered for path 'src/pyne/pyne'
Cloning into '/home/lovepreet/dagmc_bld/DAGMC/DAGMC/src/pyne/pyne'...
Submodule path 'src/pyne/pyne': checked out '860d98371a810912b86d7f353477734b24506f33'

-- CMAKE_BUILD_TYPE not specified, defaulting to Release
-- CMAKE_BUILD_TYPE: Release


-- MOAB_CMAKE_CONFIG: /home/lovepreet/dagmc_bld/MOAB/lib/cmake/MOAB/MOABConfig.cmake
-- HDF5: Using hdf5 compiler wrapper to determine C configuration
-- Found HDF5: /home/lovepreet/dagmc_bld/HDF5/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so (found version "1.8.13")
-- HDF5_INCLUDE_DIRS: /home/lovepreet/dagmc_bld/HDF5/include
-- HDF5_LIBRARIES_SHARED: /home/lovepreet/dagmc_bld/HDF5/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so
-- HDF5_LIBRARIES_STATIC: /home/lovepreet/dagmc_bld/HDF5/lib/libhdf5.a;/usr/lib/x86_64-linux-gnu/libz.a;/usr/lib/x86_64-linux-gnu/libdl.a;/usr/lib/x86_64-linux-gnu/libm.a
-- MOAB_INCLUDE_DIRS: /home/lovepreet/dagmc_bld/MOAB/include;/home/lovepreet/dagmc_bld/HDF5/include;/home/lovepreet/dagmc_bld/HDF5;/usr/include/eigen3
-- MOAB_LIBRARY_DIRS: /home/lovepreet/dagmc_bld/MOAB/lib
-- MOAB_LIBRARIES_SHARED: /home/lovepreet/dagmc_bld/MOAB/lib/libMOAB.so
-- MOAB_LIBRARIES_STATIC: /home/lovepreet/dagmc_bld/MOAB/lib/libMOAB.a
-- Found MOAB
-- Found OpenMP_C: -fopenmp (found version "4.5")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")

-- Building shared executables
-- INSTALL_RPATH_DIRS: /home/lovepreet/dagmc_bld/DAGMC/lib
-- CMAKE_C_FLAGS:
-- CMAKE_CXX_FLAGS:
-- CMAKE_Fortran_FLAGS:
-- CMAKE_C_FLAGS_RELEASE: -O3 -DNDEBUG
-- CMAKE_CXX_FLAGS_RELEASE: -O3 -DNDEBUG
-- CMAKE_Fortran_FLAGS_RELEASE:
-- CMAKE_C_IMPLICIT_LINK_LIBRARIES:
-- CMAKE_CXX_IMPLICIT_LINK_LIBRARIES: stdc++
-- CMAKE_Fortran_IMPLICIT_LINK_LIBRARIES:
-- CMAKE_EXE_LINKER_FLAGS:
-- Building gtest

-- Building library: dagmc
-- LINK LIBS: /home/lovepreet/dagmc_bld/MOAB/lib/libMOAB.so;/home/lovepreet/dagmc_bld/HDF5/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so
-- Building executable: pt_vol_test
-- Building executable: ray_fire_test
-- Building executable: test_geom
-- Building unit tests: dagmc_unit_tests
-- Building unit tests: dagmc_pointinvol_test
-- Building unit tests: dagmc_rayfire_test
-- Building unit tests: dagmc_simple_test

/home/lovepreet/dagmc_bld/DAGMC/src/src/pyne/amalgamate_pyne.sh: line 12: python: command not found
-- PyNE AMALGAMATION FAILED: 127
-- Building library: pyne_dagmc
-- LINK LIBS: /home/lovepreet/dagmc_bld/HDF5/lib/libhdf5.so;/usr/lib/x86_64-linux-gnu/libz.so;/usr/lib/x86_64-linux-gnu/libdl.so;/usr/lib/x86_64-linux-gnu/libm.so;/home/lovepreet/dagmc_bld/MOAB/lib/libMOAB.so

-- Building library: uwuw
-- LINK LIBS: dagmc-shared;pyne_dagmc-shared
-- Building executable: uwuw_preproc
-- Building unit tests: uwuw_unit_tests
-- Building unit tests: uwuw_unit_tests_tally
-- Building unit tests: uwuw_unit_tests_preprocessor

-- Building library: dagtally
-- LINK LIBS: dagmc-shared
-- Building unit tests: test_KDEKernel
-- Building unit tests: test_KDEMeshTally
-- Building unit tests: test_KDENeighborhood
-- Building unit tests: test_PolynomialKernel
-- Building unit tests: test_Quadrature
-- Building unit tests: test_CellTally
-- Building unit tests: test_TallyEvent
-- Building unit tests: test_TallyData
-- Building unit tests: test_Tally
-- Building unit tests: test_TrackLengthMeshTally

-- Building executable: build_obb

-- Building library: makeWatertight
-- LINK LIBS: dagmc-shared
-- Building executable: make_watertight
-- Building executable: check_watertight
-- Building unit tests: make_watertight_cylinder_tests
-- Building unit tests: make_watertight_cone_tests
-- Building unit tests: make_watertight_no_curve_sphere_tests
-- Building unit tests: make_watertight_sphere_n_box_test

-- FLUKA_LIBRARIES: FLUKA_LIBRARIES-NOTFOUND/libfluka.a;gfortran
-- Found Fluka
-- Building library: fludag
-- LINK LIBS: FLUKA_LIBRARIES-NOTFOUND/libfluka.a;gfortran;dagmc-shared;pyne_dagmc-shared;uwuw-shared
-- Building executable: mainfludag
-- Building unit tests: fludag_unit_tests

-- Building executable: overlap_check
-- Building unit tests: overlap_check_test

-- DAGMC cmake config file: /home/lovepreet/dagmc_bld/DAGMC/lib/cmake/DAGMCConfig.cmake
-- DAGMC cmake version file: /home/lovepreet/dagmc_bld/DAGMC/lib/cmake/DAGMCConfigVersion.cmake

-- Configuring done
CMake Error at cmake/DAGMC_macros.cmake:246 (add_library):
  Cannot find source file:

    /home/lovepreet/dagmc_bld/DAGMC/src/src/pyne/pyne.cpp

  Tried extensions .c .C .c++ .cc .cpp .cxx .m .M .mm .h .hh .h++ .hm .hpp
  .hxx .in .txx
Call Stack (most recent call first):
  src/pyne/CMakeLists.txt:30 (dagmc_install_library)


CMake Error: CMake can not determine linker language for target: pyne_dagmc-shared
CMake Error in src/pyne/CMakeLists.txt:
  Exporting the target "pyne_dagmc-shared" is not allowed since its linker
  language cannot be determined


CMake Error: CMake can not determine linker language for target: pyne_dagmc-shared
CMake Error in src/pyne/CMakeLists.txt:
  Exporting the target "pyne_dagmc-shared" is not allowed since its linker
  language cannot be determined


CMake Error: CMake can not determine linker language for target: pyne_dagmc-static
CMake Error in src/pyne/CMakeLists.txt:
  Exporting the target "pyne_dagmc-static" is not allowed since its linker
  language cannot be determined


CMake Error: CMake can not determine linker language for target: pyne_dagmc-static
CMake Error in src/pyne/CMakeLists.txt:
  Exporting the target "pyne_dagmc-static" is not allowed since its linker
  language cannot be determined


CMake Error: Cannot determine link language for target "pyne_dagmc-static".
CMake Error: Cannot determine link language for target "pyne_dagmc-shared".
-- Generating done
-- Build files have been written to: /home/lovepreet/dagmc_bld/DAGMC/bld

Maybe, it may give a better idea of the problem.

Best regards,
Lovepreet

Dear Lovepreet,

according to the line

/home/lovepreet/dagmc_bld/DAGMC/src/src/pyne/amalgamate_pyne.sh: line 12: python: command not found

you don’t have the python command available on your system. You can install it with:

sudo apt install python

Then delete and recreate the bld directory and try again.

Cheers,
David

Thanks for repling @horvathd - I replied to the email, but it seems email replies dont get through to the forum :frowning:

Another possibility is that python is installed, but for whatever reason you dont have a symbolic link to /usr/bin/python, in which case create one to /usr/bin/python3

Thanks. It has worked. However, the next command gives some errors:


Using make I have the following errors:

[ 90%] Linking CXX shared library libfludag.so
/usr/bin/ld: cannot find -lFLUKA_LIBRARIES-NOTFOUND/libfluka.a
collect2: error: ld returned 1 exit status
src/fluka/CMakeFiles/fludag-shared.dir/build.make:102: recipe for target 'src/fluka/libfludag.so' failed
make[2]: *** [src/fluka/libfludag.so] Error 1
CMakeFiles/Makefile2:1984: recipe for target 'src/fluka/CMakeFiles/fludag-shared.dir/all' failed
make[1]: *** [src/fluka/CMakeFiles/fludag-shared.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

Best regards,
Lovepreet

HI Lovepreet

As @nnikolop said, your FLUPRO variable isnt pointing to the right place, you need to point it to your fluka-cern directory, on my system for example its /home/adavis/opt/fluka-cern/fluka-4.0.1

Thanks

Andy

Thanks for your reply, Sir.
I solved the issue by writing:

$ find / -name "libfluka.a"
$ export FLUPRO=/usr/local/fluka/lib

Now, when I write these commands:

I get

unknown file: Failure
C++ exception with description "std::bad_alloc" thrown in the test body.
[  FAILED  ] FluDAGMetaDataTest.CheckAssignMatsLegacy (533636 ms)
[----------] 1 test from FluDAGMetaDataTest (533638 ms total)

[----------] Global test environment tear-down
[==========] 4 tests from 2 test cases ran. (533743 ms total)
[  PASSED  ] 3 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] FluDAGMetaDataTest.CheckAssignMatsLegacy

 1 FAILED TEST

Best regards,
Lovepreet

Hi @Singh

Are you using the develop branch, or my branch - github.com/makeclean/dagmc branch fluka-cern?

Thanks

Andy

Hello Sir,
I’m using the one suggested by @nnikolop that I think is yours:

$ mkdir DAGMC

$ cd DAGMC

$ git clone https://github.com/makeclean/DAGMC.git

$ cd DAGMC

$ git checkout fluka-cern

Thanks for your reply
Lovepreet

Ok, thats helpful, however I dont see the same error. What OS are you running? What version, which gcc version and so on?

Here is the info:

> Linux LAPTOP-2M13LPJ7 4.4.0-19041-Microsoft #488-Microsoft Mon Sep 01 13:43:00 PST 2020 x86_64 x86_64 x86_64 GNU/Linux

gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0

Python 2.7.17

Thanks

Dear FLUKA experts,
I haven’t managed to solve the problem, yet. Could anyone help me out?

Best regards,
Lovepreet

Dear FLUKA experts,
I am writing to inform that I managed to install FluDAG and maybe it will be useful for someone. The problem was caused by the fact that the FLUPRO variable addressed to the position where libfluka.a was present, however, that directory did not contain FLUKA. So, I copied libfluka.a at the position where FLUKA was present, and FLUPRO addressed them both.

Best regards,
Lovepreet