Error in compiling step-1

48 views
Skip to first unread message

X Zhu

unread,
Dec 3, 2022, 12:57:56 AM12/3/22
to deal.II User Group
Hello Prof. Bangerth and developers,
I have already installed the deal.ii library (9.1.1-9build2) by apt package (just by "apt-get install libdeal.ii-dev") in my ubuntu 20.04LTS machine. I did compilations in step-1 and step-2, same errors occur.
The environment information is as follows:

*****
$ ldconfig -p |grep deal
   libdeal.ii.so.9.1.1 (libc6,x86-64) => /lib/x86_64-linux-gnu/libdeal.ii.so.9.1.1
   libdeal.ii.so (libc6,x86-64) => /lib/x86_64-linux-gnu/libdeal.ii.so
   libdeal.ii.g.so.9.1.1 (libc6,x86-64) => /lib/x86_64-linux-gnu/libdeal.ii.g.so.9.1.1
   libdeal.ii.g.so (libc6,x86-64) => /lib/x86_64-linux-gnu/libdeal.ii.g.so

$ export | grep deal
declare -x DEAL_II_DIR="/usr/include/deal.II"
declare -x PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/include/deal.II:/usr/include/deal.II"

$ ls /usr/include/deal.II/
algorithms       distributed  grid         matrix_free   numerics      physics
base             dofs         hp           meshworker    opencascade   sundials
boost_adaptors   fe           integrators  multigrid     optimization
differentiation  gmsh         lac          non_matching  particles

$ ls /usr/local/include/deal.II/
algorithms      cgal             gmsh         matrix_free   opencascade
arborx          differentiation  grid         meshworker    optimization
base            distributed      hp           multigrid     particles
boost_adaptors  dofs             integrators  non_matching  physics
bundled         fe               lac          numerics      sundials

$ ls /usr/local/lib/
cmake            libdeal_II.g.so.9.5.0-pre  libdeal_II.so.9.5.0-pre  python3.8
libdeal_II.g.so  libdeal_II.so              pkgconfig
**********

I copy the example files into another directory and run commands in step-2 folder:

************
$ cmake .
-- Using the deal.II-9.5.0-pre installation found at /usr/local (*** PS ***: I don't know why deal.ii-9.5.0 is involved.)
-- Include macro /usr/local/share/deal.II/macros/macro_deal_ii_add_test.cmake
-- Include macro /usr/local/share/deal.II/macros/macro_deal_ii_initialize_cached_variables.cmake
-- Include macro /usr/local/share/deal.II/macros/macro_deal_ii_invoke_autopilot.cmake
-- Include macro /usr/local/share/deal.II/macros/macro_deal_ii_pickup_tests.cmake
-- Include macro /usr/local/share/deal.II/macros/macro_deal_ii_query_git_information.cmake
-- Include macro /usr/local/share/deal.II/macros/macro_deal_ii_setup_target.cmake
-- The C compiler identification is GNU 9.4.0
-- The CXX compiler identification is GNU 9.4.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
-- Autopilot invoked
###
#
#  Project  step-2  set up with  deal.II-9.5.0-pre  found at
#      /usr/local
#
#  CMAKE_BUILD_TYPE:          Debug
#
#  You can now run
#       $ make                - to compile and link the program
#       $ make run            - to (compile, link and) run the program
#
#       $ make debug          - to switch the build type to 'Debug'
#       $ make release        - to switch the build type to 'Release'
#
#       $ make edit_cache     - to change (cached) configuration variables
#                               and rerun the configure and generate phases of CMake
#
#       $ make strip_comments - to strip the source files in this
#                               directory off their comments; this is irreversible
#       $ make clean          - to remove the generated executable as well as
#                               all intermediate compilation files
#       $ make runclean       - to remove all output generated by the program
#       $ make distclean      - to clean the directory from _all_ generated
#                               files (includes clean, runclean and the removal
#                               of the generated build system)
#       $ make info           - to view this message again
#
#  Have a nice day!
#
###
-- Configuring done
-- Generating done
-- Build files have been written to: /media/zz/CE8C7223EFB7F02F/deal.ii_check/examples/step-2

$ make
Scanning dependencies of target step-2
[ 50%] Building CXX object CMakeFiles/step-2.dir/step-2.cc.o
In file included from /usr/local/include/deal.II/base/config.h:561,
                 from /usr/local/include/deal.II/grid/tria.h:20,
                 from /media/zhu/CE8C7223EFB7F02F/deal.ii_check/examples/step-2/step-2.cc:23:
/usr/local/include/deal.II/base/numbers.h:28:10: fatal error: Kokkos_Macros.hpp: No such file or directory
   28 | #include <Kokkos_Macros.hpp>
      |          ^~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/step-2.dir/build.make:63: CMakeFiles/step-2.dir/step-2.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:272: CMakeFiles/step-2.dir/all] Error 2
make: *** [Makefile:84: all] Error 2
****************

As the error shown in the above, I feel strange about another version 9.5.0 appearing in the compilation. I also do cmake by adding -DDEAL_II_DIR=/usr/local/include/deal.II or other directory like -DDEAL_II_DIR=/usr/include/deal.II (since the same /algorithms, /distributed, /grid, .. folders appear in this directory ), the error keeps the same.
So in this situation, what is the reason for this error and how to solve it? Thank you!

PS: Maybe I forgot I have installed it at the first then remove it incompletely, and installed it again. But I don't remember clearly. The clear impression is that I only use apt-get to install the deal.ii library.

Best,
Xianyun

Jan Philipp Thiele

unread,
Dec 3, 2022, 5:31:07 PM12/3/22
to deal.II User Group
ldconfig told you that the deal.II 9.1.1 shared object library is in /lib/x86_64-linux-gnu/
Additionally, there is an installation of deal.II 9.5.0-pre, which is the current development branch of deal.II, in /usr/local

This second one actually fits to apt-get install libdeal.ii-dev, so I'm not 100% sure if the 9.1.1 is a proper installation, for that There would have to be an include folder as well.
Additionally, fitting to the second installation the environment as well as the cmake variable DEAL_II_DIR are set to /usr/local which is why cmake only finds 9.5.0-pre.
You might try to set the cmake variable to the proper directory via -D DEAL_II_DIR, but you'd probably have to figure out where the matching include files are and set the variable to the parent directory of /include

If you installed, uninstalled and installed again I would not be sure whether the object libraries in /lib/x86_64-linux-gnu/ are still useable.
And I also think that on the first install you chose a different deal.II version.

I however, have never installed deal.II via apt so I don't know how to choose the correct version there, but if it was 9.1.1 before it might be in your Terminals call history.
Best,
Philipp

X. Zhu

unread,
Dec 4, 2022, 10:17:28 AM12/4/22
to dea...@googlegroups.com
Hello Jan and Prof. Bangerth,
Thanks for your reply. I fixed the issue by removing the package. After that, I can run step-1 by the "apt-get" version 9.1.1 and also by the git clone package (version 9.5.0). Thank you all.



--
The deal.II project is located at http://www.dealii.org/
For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en
---
You received this message because you are subscribed to a topic in the Google Groups "deal.II User Group" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/dealii/BaJRo2PDCmA/unsubscribe.
To unsubscribe from this group and all its topics, send an email to dealii+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dealii/ae204b02-0e33-44af-8e27-c9c12a6f4ef5n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages