Issue with running FEniCS demo when FEniCS is compiled from source

Hi,

I am trying to install FEniCS from source on a HPC cluster. dijitso and dolfin version is 2019.1.0.

I was able to successfully compile dolfin and its subsequent python part. Running python3 -c "import fenics" does not throw an error. When I run the demo demo_poisson.py, the program throws the following error:

dijitso failed to load existing file:
	/home/cteerara/.cache/dijitso/lib/libdijitso-dolfin_expression_be66c0c4db22d7873f49b8e70c22058f.so
error is:
	/home/cteerara/.cache/dijitso/lib/libdijitso-dolfin_expression_be66c0c4db22d7873f49b8e70c22058f.so: undefined symbol: _ZNK6dolfin8Variable3strB5cxx11Eb
dijitso failed to load existing file:
	/home/cteerara/.cache/dijitso/lib/libdijitso-dolfin_expression_be66c0c4db22d7873f49b8e70c22058f.so
error is:
	/home/cteerara/.cache/dijitso/lib/libdijitso-dolfin_expression_be66c0c4db22d7873f49b8e70c22058f.so: undefined symbol: _ZNK6dolfin8Variable3strB5cxx11Eb
dijitso failed to load existing file:
	/home/cteerara/.cache/dijitso/lib/libdijitso-dolfin_expression_be66c0c4db22d7873f49b8e70c22058f.so
error is:
	/home/cteerara/.cache/dijitso/lib/libdijitso-dolfin_expression_be66c0c4db22d7873f49b8e70c22058f.so: undefined symbol: _ZNK6dolfin8Variable3strB5cxx11Eb
Traceback (most recent call last):
  File "/oasis/projects/nsf/cob146/cteerara/FEniCS/lib/python3.6/site-packages/dolfin/jit/jit.py", line 168, in compile_class
    submodule = dijitso.extract_factory_function(module, "create_" + module_name)()
  File "/oasis/projects/nsf/cob146/cteerara/FEniCS/lib/python3.6/site-packages/dijitso/jit.py", line 47, in extract_factory_function
    function = getattr(lib, name)
AttributeError: 'NoneType' object has no attribute 'create_dolfin_expression_be66c0c4db22d7873f49b8e70c22058f'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "dolfin/python/demo/documented/poisson/demo_poisson.py", line 153, in <module>
    f = Expression("10*exp(-(pow(x[0] - 0.5, 2) + pow(x[1] - 0.5, 2)) / 0.02)", degree=2)
  File "/oasis/projects/nsf/cob146/cteerara/FEniCS/lib/python3.6/site-packages/dolfin/function/expression.py", line 400, in __init__
    self._cpp_object = jit.compile_expression(cpp_code, params)
  File "/oasis/projects/nsf/cob146/cteerara/FEniCS/lib/python3.6/site-packages/dolfin/function/jit.py", line 158, in compile_expression
    expression = compile_class(cpp_data, mpi_comm=mpi_comm)
  File "/oasis/projects/nsf/cob146/cteerara/FEniCS/lib/python3.6/site-packages/dolfin/jit/jit.py", line 170, in compile_class
    raise RuntimeError("Unable to compile C++ code with dijitso")
RuntimeError: Unable to compile C++ code with dijitso
dijitso failed to load existing file:
	/home/cteerara/.cache/dijitso/lib/libdijitso-dolfin_expression_be66c0c4db22d7873f49b8e70c22058f.so
error is:
	/home/cteerara/.cache/dijitso/lib/libdijitso-dolfin_expression_be66c0c4db22d7873f49b8e70c22058f.so: undefined symbol: _ZNK6dolfin8Variable3strB5cxx11Eb
Traceback (most recent call last):
  File "/oasis/projects/nsf/cob146/cteerara/FEniCS/lib/python3.6/site-packages/dolfin/jit/jit.py", line 168, in compile_class
    submodule = dijitso.extract_factory_function(module, "create_" + module_name)()
  File "/oasis/projects/nsf/cob146/cteerara/FEniCS/lib/python3.6/site-packages/dijitso/jit.py", line 47, in extract_factory_function
    function = getattr(lib, name)
AttributeError: 'NoneType' object has no attribute 'create_dolfin_expression_be66c0c4db22d7873f49b8e70c22058f'

Running dijitso config give the followings:

Showing default flags for dijitso:
build:
    cxx: c++
    cxxflags: -Wall -shared -fPIC -std=c++11
    cxxflags_debug: -g -O0
    cxxflags_opt: -O3 -fno-math-errno -fno-trapping-math -ffinite-math-only
    debug: False
    include_dirs: 
    lib_dirs: 
    libs: 
    rpath_dirs: 
cache:
    cache_dir: /home/cteerara/.cache/dijitso
    comm_dir: comm
    enable_build_log: True
    fail_dir_root: None
    inc_dir: include
    inc_postfix: .h
    lib_basename: dijitso-
    lib_dir: lib
    lib_loader: ctypes
    lib_postfix: .so
    lib_prefix: lib
    log_dir: log
    log_postfix: .txt
    src_dir: src
    src_postfix: .cpp
    src_storage: compress
    temp_dir_root: None

I am wondering if anybody have any insights on why this is the case and how to resolve this?

Thank you very much,

1 Like