Forum Message

 

 

We have moved the forum to https://forum.ngsolve.org . This is an archived version of the topics until 05/05/23. All the topics were moved to the new forum and conversations can be continued there. This forum is just kept as legacy to not invalidate old links. If you want to continue a conversation just look for the topic in the new forum.

Notice

The forum is in read only mode.

ngsxfem installing issues

More
4 years 4 months ago #2138 by jkim
Hello Developers,

I'm trying to install ngsxfem on Ubuntu 18.04.3 but I'm having issues. I don't have ngsolve/netgen installed so I followed the directions for building ngsxfem with ngsolve. I've installed all the necessary prerequisite packages to the OS.

Here are the commands that I used:

git clone github.com/ngsxfem/ngsxfem.git
cdngsxfem
mkdir build
cd build

git submodule update --init --recursive

cmake ../ -DCMAKE_INSTALL_PREFIX=~/Desktop/Solver -DBUILD_NGSOLVE=ON
(I've also tried adding -DCMAKE_PREFIX_PATH= ~/Desktop/Solver... but it still fails at the same point during the build process; Am I specifying the wrong location for -DCMAKE_PREFIX_PATH?)

Once the last command is inputted to the terminal, the build starts but ends with an error after a while. The error that I'm getting is the following:

[ 29%] Building CXX object fem/CMakeFiles/ngfem.dir/h1hofe.cpp.o
.
(some codes)
.
fem/CMakeFiles/ngfem.dir/build.make:206: recipe for target 'fem/CMakeFiles/ngfem.dir/h1hofe.cpp.o' failed
CMakeFiles/Makefile2:425: recipe for target 'fem/CMakeFiles/ngfem.dir/all' failed
Makefile:140: recipe for target 'all' failed
CMakeFiles/ngsolve.dir/build.make:115: recipe for target 'dependencies/Stamp/ngsolve/ngsolve-build' failed
CMakeFiles/Makefile2:211: recipe for target 'CMakeFiles/ngsolve.dir/all' failed
make[5]: *** [fem/CMakeFiles/ngfem.dir/h1hofe.cpp.o] Error 1
make[4]: *** [fem/CMakeFiles/ngfem.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [dependencies/Stamp/ngsolve/ngsolve-build] Error 2
make[1]: *** [CMakeFiles/ngsolve.dir/all] Error 2
Makefile:151: recipe for target 'all' failed
make: *** [all] Error 2
CMake Error at CMakeLists.txt:86 (find_package):
Could not find a package configuration file provided by "NGSolve" with any
of the following names:

NGSolveConfig.cmake
ngsolve-config.cmake

Add the installation prefix of "NGSolve" to CMAKE_PREFIX_PATH or set
"NGSolve_DIR" to a directory containing one of the above files. If
"NGSolve" provides a separate development package or SDK, be sure it has
been installed.

Thanks for all your help in advance!
More
4 years 4 months ago #2139 by schruste
Replied by schruste on topic ngsxfem installing issues
hi jkim,

As you did not install ngsolve beforehand, ngsxfem builds ngsolve as part of its own build process. In this step (building ngsolve) however something seems to go wrong (the important part for understanding what goes wrong is in the "... (some codes) ..."-block. Please provide this part. Alternatively, you can first install NGSolve (it's very easy on Ubuntu) and afterwards build ngsxfem with -DBUILD_NGSOLVE=OFF .

Best,
Christoph
More
4 years 4 months ago #2140 by jkim
Replied by jkim on topic ngsxfem installing issues
Hi Christoph,

I installed ngsolve/netgen prior to installing ngsxfem as you suggested but I get another error once I type 'make.'

Here are the codes that I typed in:

git clone github.com/ngsxfem/ngsxfem.git
cd ngsxfem
mkdir build
cd build

cmake ../ -DCMAKE_INSTALL_PREFIX=/usr/bin -DBUILD_NGSOLVE=OFF
make

Here is the error message that I'm getting:

[ 60%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/utils/ngsxstd.cpp.o
[ 63%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/utils/p1interpol.cpp.o
[ 66%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/utils/restrictedblf.cpp.o
/home/imga/Desktop/ngsxfem/utils/restrictedblf.cpp: In member function ‘virtual ngla::MatrixGraph* ngcomp::RestrictedBilinearForm::GetGraph(int, bool)’:
/home/imga/Desktop/ngsxfem/utils/restrictedblf.cpp:32:63: error: ‘using element_type = class ngcomp::FESpace {aka class ngcomp::FESpace}’ has no member named ‘GetSpecialElements’; did you mean ‘GetSpatialDimension’?
const Array<SpecialElement*> & specialelements = fespace->GetSpecialElements();
^~~~~~~~~~~~~~~~~~
GetSpatialDimension
python/CMakeFiles/ngsxfem_py.dir/build.make:518: recipe for target 'python/CMakeFiles/ngsxfem_py.dir/__/utils/restrictedblf.cpp.o' failed
make[2]: *** [python/CMakeFiles/ngsxfem_py.dir/__/utils/restrictedblf.cpp.o] Error 1
CMakeFiles/Makefile2:1049: recipe for target 'python/CMakeFiles/ngsxfem_py.dir/all' failed
make[1]: *** [python/CMakeFiles/ngsxfem_py.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2


Thank You
More
4 years 4 months ago #2152 by schruste
Replied by schruste on topic ngsxfem installing issues
Dear jkim,

The problem is that you have been using incompatible version of ngsolve and ngsxfem. In this case your ngsolve version was newer than compatible with the latest ngsxfem (release branch) version. Now, thanks to Christopher this has been fixed in the updated version. So, please update ngsxfem (git pull) and try again.

Best,
Christoph
More
4 years 4 months ago #2157 by jkim
Replied by jkim on topic ngsxfem installing issues
Hi Christoph,

It works now! Thanks for all your help!

Thanks
More
4 years 3 weeks ago #2457 by Amad
Replied by Amad on topic ngsxfem installing issues
Hi,

I'm having trouble installing ngsxfem as well.
I followed all the steps, but I'm still getting an error.

I'm using NGSolve-6.2.2002 on Unbuntu.

And, to install ngsxfem I perform the following steps:
Code:
git clone https://github.com/ngsxfem/ngsxfem.git cd ngsxfem mkdir build cd build cmake ../ -DCMAKE_INSTALL_PREFIX=/usr/bin -DBUILD_NGSOLVE=OFF

Then, I received
Code:
-- The C compiler identification is GNU 9.2.1 -- The CXX compiler identification is GNU 9.2.1 -- 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 PythonInterp: /usr/bin/python3 (found suitable version "3.6.9", minimum required is "3") -- Found PythonLibs: /usr/lib/x86_64-linux-gnu/libpython3.6m.so (found suitable version "3.6.9", minimum required is "3") -- Found Netgen: /usr/lib/cmake/netgen -- Found Netgen: /usr/lib/cmake/netgen -- Setting build type to NGSolve build type: Release ------------------------------------------------------------------------ xfem 1.1-1909: Automatic configuration OK. Install directory: /usr/bin Compiler: CMAKE_CXX_COMPILER = /usr/bin/c++ Compiler Flags: flags = Generator: Unix Makefiles Build Type: type = Build NGSolve from scratch: OFF Build xfem (and NGSolve) with ccache: OFF Building: Type 'make' to compile xfem. Type 'make install' to install xfem. ------------------------------------------------------------------------ -- Configuring done -- Generating done -- Build files have been written to: /home/alan/ngsxfem/build

When I digit
Code:
make

I received the following error:
Code:
[ 3%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/python_ngsxfem.cpp.o [ 6%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/cutint/fieldeval.cpp.o [ 9%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/cutint/spacetimecutrule.cpp.o /home/alan/ngsxfem/cutint/spacetimecutrule.cpp: In function ‘std::tuple<const ngfem::IntegrationRule*, ngcore::Array<double, long unsigned int> > xintegration::SpaceTimeCutIntegrationRule(ngbla::FlatVector<double>, const ngfem::ElementTransformation&, ngfem::ScalarFiniteElement<1>*, DOMAIN_TYPE, int, int, SWAP_DIMENSIONS_POLICY, ngcore::LocalHeap&)’: /home/alan/ngsxfem/cutint/spacetimecutrule.cpp:151:30: error: ‘class ngfem::IntegrationPoint’ has no member named ‘SetPrecomputedGeometry’ 151 | (*ir)[k].SetPrecomputedGeometry(true); | ^~~~~~~~~~~~~~~~~~~~~~ python/CMakeFiles/ngsxfem_py.dir/build.make:110: recipe for target 'python/CMakeFiles/ngsxfem_py.dir/__/cutint/spacetimecutrule.cpp.o' failed make[2]: *** [python/CMakeFiles/ngsxfem_py.dir/__/cutint/spacetimecutrule.cpp.o] Error 1 CMakeFiles/Makefile2:1049: recipe for target 'python/CMakeFiles/ngsxfem_py.dir/all' failed make[1]: *** [python/CMakeFiles/ngsxfem_py.dir/all] Error 2 Makefile:140: recipe for target 'all' failed make: *** [all] Error 2

In the terminal (~/ngsxfem/build$ ) I digit
Code:
git pull origin master git submodule update --init --recursive

Then, I redo the cmake ...
Code:
cmake ../ -DCMAKE_INSTALL_PREFIX=/usr/bin -DBUILD_NGSOLVE=OFF

Then, I got
Code:
-- Found Netgen: /usr/lib/cmake/netgen -- Found Netgen: /usr/lib/cmake/netgen -- Setting build type to NGSolve build type: Release ------------------------------------------------------------------------ xfem 1.1-1909: Automatic configuration OK. Install directory: /usr/bin Compiler: CMAKE_CXX_COMPILER = /usr/bin/c++ Compiler Flags: flags = Generator: Unix Makefiles Build Type: type = Build with space-time quadrature sanity checks (abuses ngsolve's intrule nr): ON Build NGSolve from scratch: OFF Build xfem (and NGSolve) with ccache: OFF Building: Type 'make' to compile xfem. Type 'make install' to install xfem. ------------------------------------------------------------------------ -- Configuring done -- Generating done -- Build files have been written to: /home/alan/ngsxfem/build

I digit and it compiles with no error
Code:
make
Code:
Scanning dependencies of target ngsxfem_py [ 3%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/python_ngsxfem.cpp.o [ 6%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/cutint/fieldeval.cpp.o [ 9%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/cutint/spacetimecutrule.cpp.o [ 12%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/cutint/straightcutrule.cpp.o [ 16%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/cutint/xdecompose.cpp.o [ 19%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/cutint/xintegration.cpp.o [ 22%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/lsetcurving/calcgeomerrors.cpp.o [ 25%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/lsetcurving/calcpointshift.cpp.o [ 29%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/lsetcurving/lsetrefine.cpp.o [ 32%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/lsetcurving/projshift.cpp.o [ 35%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/lsetcurving/shiftedevaluate.cpp.o [ 38%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/lsetcurving/shiftintegrators.cpp.o [ 41%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/spacetime/diffopDt.cpp.o [ 45%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/spacetime/SpaceTimeFE.cpp.o [ 48%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/spacetime/SpaceTimeFESpace.cpp.o [ 51%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/spacetime/timecf.cpp.o [ 54%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/spacetime/spacetime_vtk.cpp.o [ 58%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/utils/bitarraycf.cpp.o [ 61%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/utils/ngsxstd.cpp.o [ 64%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/utils/p1interpol.cpp.o [ 67%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/utils/restrictedblf.cpp.o [ 70%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/utils/xprolongation.cpp.o [ 74%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/xfem/cutinfo.cpp.o [ 77%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/xfem/ghostpenalty.cpp.o [ 80%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/xfem/sFESpace.cpp.o [ 83%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/xfem/symboliccutbfi.cpp.o [ 87%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/xfem/symboliccutlfi.cpp.o [ 90%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/xfem/xfemdiffops.cpp.o [ 93%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/xfem/xFESpace.cpp.o [ 96%] Building CXX object python/CMakeFiles/ngsxfem_py.dir/__/xfem/xfiniteelement.cpp.o [100%] Linking CXX shared library ngsxfem_py.so [100%] Built target ngsxfem_py

But when I try to
Code:
make install

I received the following error
Code:
Install the project... -- Install configuration: "" -- Installing: /usr/bin/share/ngsxfem/cutint/area_of_a_circle_quads.py CMake Error at cutint/py_demos/cmake_install.cmake:41 (file): file INSTALL cannot copy file "/home/alan/ngsxfem/cutint/py_demos/area_of_a_circle_quads.py" to "/usr/bin/share/ngsxfem/cutint/area_of_a_circle_quads.py". Call Stack (most recent call first): cutint/cmake_install.cmake:42 (include) cmake_install.cmake:42 (include) Makefile:73: recipe for target 'install' failed make: *** [install] Error 1

What I am doing wrong? Am I missing something?

Thank you in advance.
Time to create page: 0.157 seconds