I wanted to install the ngs-special-functions and followed the instructions on the webpage. Looks all good til I run make, then I get the following error

Found Netgen: /home/mary/ngsuite/ngsolve-install/lib/cmake/netgen
– Setting build type to NGSolve build type: RelWithDebInfo
– Found PythonInterp: /usr/bin/python3 (found suitable version “3.6.5”, minimum required is “3”)
– Found PythonLibs: /usr/lib64/ (found suitable version “3.6.5”, minimum required is “3”)
CMake Error at CMakeLists.txt:17 (target_link_libraries):
The plain signature for target_link_libraries has already been used with
the target “special_functions”. All uses of target_link_libraries with a
target must be either all-keyword or all-plain.

The uses of the plain signature are here:

  • /home/mary/ngsuite/ngsolve-install/lib/cmake/ngsolve/NGSolveConfig.cmake:76 (target_link_libraries)
  • /home/mary/ngsuite/ngsolve-install/lib/cmake/ngsolve/NGSolveConfig.cmake:82 (target_link_libraries)

I do have NgSolve installed - do I need a newer version or what else am I missing ?


Hi Marie-Therese,

Yes, you need to update NGSolve, the code resolving this issue was committed in October 2019.


Vielen Dank und guten Morgen.

Ich hab jetzt NgSolve upgedatet (Anweisungen auf der Webpage gefolgt). Hat geklappt … wenn ich allerdings dann die special functions kompilieren will krieg ich eine Fehlermeldung dass gcc-8 nicht hinreichend ist. Jetzt hab ich gcc-10 installiert und

gcc --version
gxx --version

verweisen jeweils auf gcc10. Wenn ich allerdings NgSolve neu installiere verwendet er weiterhin die 8ter Version. Was muss ich denn da noch aendern ?

vielen Dank

Sorry, wrong language … my brain. Please find the English version below (just in case ;-))

I updated NgSolve, compiled and installed it - all fine. However, wenn compiling the special functions package I got an error message that I need to upgrade my gcc compiler. I did install gcc10 and
gcc --version
g++ --version
link to the gcc10 compilers. However even if I reconfigure NgSolve (deleting the ngsolve-build and running cmake again), it’s using the gcc8 compilers.

Thanks a lot

Hi Mary,
Try to rerun cmake with additional options -DCMAKE_CXX_COMPILER=g+±10 -DCMAKE_C_COMPILER=gcc-10
Best Christopher

Thanks, I recompiled everything -it’s working now. I just have to figure out how to work with these special functions.

Thanks again