Issues to run PyFR v.1.5.0+, gcc compilation failure

Dear all,

I’ve tried to run the last release of PyFR v.1.5.0. However I get the error message below, I presume related to the compilation of files created by PyFR with the solver kernels therein. Previous version v.1.4.0 runs correctly.

Please let me know if you know the source of these issues.

Thanks in advance.

Best regards,
Antonio

File "/develop/home/antonio/Software_Local/localLibs/Python3/build/bin/pyfr", line 9, in <module>
load_entry_point('pyfr==1.5.0', 'console_scripts', 'pyfr')()
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/__main__.py", line 110, in main
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/__main__.py", line 235, in process_run
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/__main__.py", line 216, in _process_common
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/solvers/__init__.py", line 14, in get_solver
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/integrators/__init__.py", line 43, in get_integrator
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/integrators/std/controllers.py", line 12, in __init__
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/integrators/std/steppers.py", line 8, in __init__
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/integrators/std/base.py", line 12, in __init__
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/integrators/base.py", line 59, in __init__
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/solvers/base/system.py", line 65, in __init__
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/solvers/base/system.py", line 174, in _gen_kernels
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/solvers/baseadvec/elements.py", line 57, in <lambda>
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/backends/base/backend.py", line 166, in kernel
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/backends/openmp/gimmik.py", line 34, in mul
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/util.py", line 34, in __call__
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/backends/openmp/provider.py", line 13, in _build_kernel
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/backends/openmp/compiler.py", line 61, in __init__
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/backends/openmp/compiler.py", line 30, in __init__
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pyfr-1.5.0-py3.3.egg/pyfr/backends/openmp/compiler.py", line 80, in _build
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pytools-2016.2.2-py3.3.egg/pytools/prefork.py", line 223, in call_capture_output
return forker.call_capture_output(cmdline, cwd, error_on_nonzero)
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pytools-2016.2.2-py3.3.egg/pytools/prefork.py", line 180, in call_capture_output
error_on_nonzero)
File "/develop/home/antonio/Software_Local/localLibs/Python3/build/lib/python3.3/site-packages/pytools-2016.2.2-py3.3.egg/pytools/prefork.py", line 162, in _remote_invoke
raise result
pytools.prefork.ExecError: error invoking 'cc -shared -std=c99 -Ofast -march=native -fopenmp -fPIC -o libtmp.so tmp.c': status 1 invoking 'cc -shared -std=c99 -Ofast -march=native -fopenmp -fPIC -o libtmp.so tmp.c': b'tmp.c: In function \xe2\x80\x98gimmik_mm\xe2\x80\x99:\ntmp.c:9:30: error: expected \xe2\x80\x98#pragma omp\xe2\x80\x99 clause before \xe2\x80\x98simd\xe2\x80\x99\n'

Hi Antonio,

Which version of gcc are you using?
It seems that your C compiler does not support '#pragma omp simd' which
is one of OpenMP 4.0 features. As mentioned in the user guide, PyFR 1.5
with openmp backend needs GCC>= 4.9 which support OpenMP 4.0.

You can also use other C compiler which supports OpenMP 4.0, such as
intel C compiler. In this case, you need to specify C compiler as below.

[backend-openmp]
cc = icc (or your C compiler)

Regards,

Jin Seok

Hi Jin,

Thanks a lot for your reply.

Yes I presume this is where the issues comes from. I’m using gcc v.4.7.3.

Best regards,
Antonio