Quick follow-up on my previous post: Turns out that qwt 6.1.2-1 stores its .so files in /usr/lib/qwt, whereas 6.1.1-1 puts them in /usr/lib. You can get a previously-compiled Elmer going by creating file /etc/ld.so.conf.d/qwt.conf with contents '/usr/lib/qwt' and then do 'sudo ldconfig'. But that doesn't fix the QWT problem building elmerfem-git.
Search Criteria
Package Details: elmerfem-git 9.0.r741.g7665920e-1
Git Clone URL: | https://aur.archlinux.org/elmerfem-git.git (read-only, click to copy) |
---|---|
Package Base: | elmerfem-git |
Description: | A finite element software for multiphysical problems |
Upstream URL: | http://www.elmerfem.org |
Licenses: | GPL |
Conflicts: | elmerfem |
Provides: | elmerfem |
Submitter: | saxonbeta |
Maintainer: | None |
Last Packager: | bartus |
Votes: | 5 |
Popularity: | 0.000000 |
First Submitted: | 2015-02-11 21:21 (UTC) |
Last Updated: | 2021-12-12 14:20 (UTC) |
Dependencies (23)
- arpack (arpack-gitAUR)
- blas (blis-cblas-openmpAUR, blis-cblasAUR, aocl-blis-aoccAUR, aocl-blisAUR, blas-mklAUR, blas-gitAUR, blis-gitAUR, blisAUR, atlas-lapackAUR, blas-aocl-gccAUR, blas-aocl-aoccAUR, openblas-lapackAUR, blas-openblas)
- fmt (fmt-gitAUR)
- freetype2 (freetype2-gitAUR, freetype2-qdoledAUR, freetype2-macosAUR)
- glew (glew-libepoxyAUR, glew-gitAUR, glew-waylandAUR, glew-osmesa-gitAUR, glew-wayland-gitAUR)
- libcsa-gitAUR
- libnn-gitAUR
- libxcursor
- netcdf-fortran-openmpi
- opencascade (opencascade-gitAUR, opencascade-rcAUR, opencascade-f3dAUR)
- openmp
- openmpi (openmpi-gitAUR)
- pugixml (pugixml-gitAUR)
- qt5-base (qt5-base-gitAUR, qt5-base-headlessAUR)
- qt5-script (qt5-script-gitAUR)
- qt5-svg (qt5-svg-gitAUR)
- qwt
- scalapackAUR
- tbb (tbb2020AUR, onetbb-gitAUR, onetbb)
- vtk (vtk-gitAUR)
- Show 3 more dependencies...
Required by (0)
Sources (8)
Latest Comments
« First ‹ Previous 1 2 3 4
ckoresko commented on 2015-04-15 15:50 (UTC)
ckoresko commented on 2015-04-15 14:15 (UTC)
This package doesn't build on my system. There are two issues I know about:
1) The latest upgrade to qwt (6.1.1-1 -> 6.1.2-1) causes the build to error out early on with
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:
QWT_LIBRARY (ADVANCED)
linked by target "ElmerGUI" in directory blah blah blah
This can be cured by reverting to the previous version of qwt.
2) After the compiling is done there's this:
rm: cannot remove 'blah blah blah /elmerfem-git/pkg/elmerfem-git/usr/lib/libparpack.so’: No such file or directory
rm: cannot remove 'blah blah blah /elmerfem-git/pkg/elmerfem-git/usr/lib/libarpack.so’: No such file or directory
I don't know how to fix this one.
ckoresko commented on 2015-03-25 23:02 (UTC)
After a big struggle I got Elmer working reasonably well (well enough to go through the first GUI tutorial, at least). Here are some notes from that effort. Unfortunately the notes I'm deriving these from are a bit incoherent, since I was trying all kinds of different things:
The PKGBUILD has a couple of issues:
It has a dependency on opencascade, which will not link to Elmer (as far as I can tell). You want the oce package from the AUR – that provides an alternate version of OpenCascade. Note that OpenCascade is needed to be able to read .step files (among other things).
NB: The fact that this package is named 'oce' rather than 'occ' makes it very hard to find!
It doesn't include the cmake switch to link to occ
-DWITH_OCC:BOOL=TRUE
It doesn't build the tetgen plugin. I don't know how to fix that in the PKGBUILD, so I built it manually:
cd elmerfem-git/src/elmerfem/misc/tetgen_plugin/plugin
qmake; make; sudo make install
sudo cp libtetplugin.so.1.0.0 /usr/bin/elmer/lib/
cd /usr/bin/elmer/lib
sudo ln -sf libtetplugin.so.1.0.0 libtetplugin.so
sudo ln -sf libtetplugin.so.1.0.0 libtetplugin.so.1
sudo ln -sf libtetplugin.so.1.0.0 libtetplugin.so.1.0
Add /usr/bin/elmer/lib to your LD_LIBRARY_PATH environment variable
At this point it should be possible to get the test app (testmain) to run.
The default netgen package doesn't work (on my system, at least): it dies on launch with:
X Error of failed request: BadValue (integer parameter out of range for operation)
Major opcode of failed request: 155 (GLX)
Minor opcode of failed request: 3 (X_GLXCreateContext)
Value in failed request: 0x0
So use the netgen-svn package instead.
The basic elmerfem and elmerfem-git packages build without incident, but launching ElmerGUI brings up a series of warning boxes that various components aren't found. To fix that, you have to define two environment variables:
export ELMER_HOME=/usr
export ELMERGUI_HOME=/usr/share/ElmerGUI
export NETGENDIR=/usr/bin # Needed for netgen support, which you probably want
Add /usr/lib/Togl1.7 to the LD_LIBRARY_PATH
I also set some environment variables for OpenCascade, but am not sure whether they are needed:
export CASROOT="/opt/opencascade"
export PATH="$PATH:$CASROOT/bin"
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$CASROOT/lib"
export CSF_LANGUAGE=us
export MMGT_CLEAR=1
export CSF_EXCEPTION_PROMPT=1
export CSF_SHMessage="$CASROOT"/src/SHMessage
export CSF_MDTVTexturesDirectory="$CASROOT"/src/Textures
export CSF_XSMessage="$CASROOT"/src/XSMessage
export CSF_StandardDefaults="$CASROOT"/src/StdResource
export CSF_PluginDefaults="$CASROOT"/src/StdResource
export CSF_XCAFDefaults="$CASROOT"/src/StdResource
export CSF_StandardLiteDefaults="$CASROOT"/src/StdResource
export CSF_UnitsLexicon="$CASROOT"/src/UnitsAPI/Lexi_Expr.dat
export CSF_UnitsDefinition="$CASROOT"/src/UnitsAPI/Units.dat
export CSF_IGESDefaults="$CASROOT"/src/XSTEPResource
export CSF_STEPDefaults="$CASROOT"/src/XSTEPResource
export CSF_XmlOcafResource="$CASROOT"/src/XmlOcafResource
export CSF_GraphicShr="$CASROOT"/lib/libTKOpenGl.so
ckoresko commented on 2015-02-26 01:42 (UTC)
Thanks, Tempel! Following your suggestion I changed the cmake command to the following, and the package built and appeared to install correctly.
cmake -DWITH_ELMERGUI:BOOL=TRUE -DWITH_MPI:BOOL=TRUE -DCMAKE_INSTALL_PREFIX=/usr \
-DWITH_VTK:BOOL=TRUE -DWITH_OpenMP:BOOL=TRUE -DWITH_QWT:BOOL=TRUE \
-DELMER_SOLVER_HOME=/usr/share/elmersolver -DELMER_INSTALL_LIB_DIR=/usr/lib
Tempel commented on 2015-02-22 02:53 (UTC)
Ignore my previous comment; everything was fixed by modifying just the cmake lines in the PKGBUILD. Removing all the $pkgdir references on those three lines made everything go to the right locations, so the rm and mv lines were able to do their jobs. After that, ElmerGUI was able to run, though I haven't tested any further.
Tempel commented on 2015-02-22 02:39 (UTC)
Had a build failure with these errors:
rm: cannot remove ‘/home/randy/tmp/yaourt-tmp-randy/aur-elmerfem-git/pkg/elmerfem-git/usr/lib/libparpack.so’: No such file or directory
rm: cannot remove ‘/home/randy/tmp/yaourt-tmp-randy/aur-elmerfem-git/pkg/elmerfem-git/usr/lib/libarpack.so’: No such file or directory
Commenting out the line in the PKGBUILD containing "rm -- $pkgdir/usr/lib/{libparpack.so,libarpack.so}" then gave a new error:
mv: cannot stat ‘/home/randy/tmp/yaourt-tmp-randy/aur-elmerfem-git/pkg/elmerfem-git/usr/share/elmersolver/lib/*.so’: No such file or directory
Commenting out the PKGBUILD line "mv $pkgdir/usr/share/elmersolver/lib/*.so $pkgdir/usr/lib" allowed it to build, though it does warn that "Package contains reference to $pkgdir". Attempting to install the created package tries to install over the build directory. I haven't been able to fix this yet.
Pinned Comments
bartus commented on 2022-03-14 10:34 (UTC)
Sorry lads, I'm at the Polish Ukraine border helping allocate refugees. Expect no update until this hell is over, wish us luck. Have no time nor access to my rig and AUR keys to test/post updates. If you have a patch, ping me on email - I'll add you as co-maintainer. Posted with my old script - https://github.com/bartoszek/aur-post
bartus commented on 2021-06-21 15:34 (UTC) (edited on 2021-11-22 11:41 (UTC) by bartus)
Use env vars to control build process:
MAKEFLAGS=xxx
to override default make flags (e.g: MAKEFLAGS=-j2 for building with 2 threads)FRAGMENT=#{commit,tag,brach}=xxx
for bisect buildCMAKE_FLAGS=xxx:yyy:zzz
to define extra CMake flagsDISABLE_ALL=1
for bare bone build.DISABLE_TRILINOS=1
disable building with TrilinosDISABLE_MMG
disable MMG - dynamic remeshingDISABLE_ELMERICE
disable ElmerICE - glacier melting solverDISABLE_CONTRIB
disable multishell solver for composite lamitanesDISABLE_LUA
disable LUA scripting in solver definitionsDISABLE_MP
disable OpenMP threadingDISABLE_GUI
disable ElmerGUI - QT GUIRequires GUI
DISABLE_GUILOG
disable ElmerGUI LoggerDISABLE_GUITEST
disable ElmerGUI TestsDISABLE_OCC
disable OCC - OpenCOLADA cad model importDISABLE_MATC
disable MatC scripting in QT GUIDISABLE_PARAVIEW
disable ParaView - GUI post-process exporterDISABLE_QWT
disable QWT - GUI convergence monitoringDISABLE_VTK
disable VTK - GUI post-process Widget and exporterDISABLE_MPI
disable OpenMPI parallelizationRequires MPI
DISABLE_MUMPS
disable Mumps - gausian elimination LAS solverDISABLE_HYPRE
disable Hypre - multigrid LAS solverUsage: