Skip to content
Snippets Groups Projects
BuildIssues.txt 2.03 KiB
Newer Older
OpenFOAM-v1612+
==================
Known Build Issues
==================

--------------
Intel Compiler
--------------

  Since OpenFOAM uses C++11, a fairly recent version is required.
Mark Olesen's avatar
Mark Olesen committed
  The Intel compiler - icc (ICC) 17.0.1 20161005 is ok, but the
  initial release - icc (ICC) 17.0.0 20160721 - has a bug that
  will result in these types of error messages.

    MatrixSpaceI.H(492): error: no instance of overloaded function
    "Foam::MatrixSpace<Form, Cmpt, Mrows, Ncols>::Block<SubTensor,
    BRowStart, BColStart>::operator=" matches the specified type


---
VTK
---

If using the runTimePostProcessing to create on-the-fly images, you
can simply just compile ParaView-5.0.1 and these libraries will
Mark Olesen's avatar
Mark Olesen committed
If you elect to use a separate VTK compilation (for example for
off-screen rendering), it is advisable to reuse the VTK libraries that
are provided with ParaView-5.0.1, by making an appropriate symlink
Mark Olesen's avatar
Mark Olesen committed
prior to using makeVTK. This doesn't just reduce disk-space, but works
much better than using the VTK-7.1.0.tar file.

Mark Olesen's avatar
Mark Olesen committed
Using runTimePostProcessing with the 'plain' VTK-7.1.0 libraries does
generally work, but does not exit cleanly:

    symbol lookup error: .../linux64Gcc/VTK-7.1.0/lib/libvtkCommonExecutionModel-7.1.so.1:
    undefined symbol: _ZN33vtkFilteringInformationKeyManager13ClassFinalizeEv

    symbol lookup error: .../linux64Gcc/VTK-7.1.0/lib/libvtkCommonDataModel-7.1.so.1:
    undefined symbol: _ZN49vtkInformationQuadratureSchemeDefinitionVectorKeyD1Ev

Mark Olesen's avatar
Mark Olesen committed
This error appears to be suppressed if VTK is compiled with a Debug build-type.


-------------------------
Building on older systems
-------------------------

If the system gcc is too old for building OpenFOAM, a third-party gcc or
clang/llvm installation can be used. If building clang/llvm, note that
there are also minimum gcc/g++ requirements there:

   Min gcc/g++
   ===========   ==========
    4.4          llvm-3.4.2
    4.7          llvm-3.5.2 - llvm-3.7.0


If your system compiler is too old to build the minimum required gcc or
clang/llvm, it is just simply too old.