[gmx-developers] OpenMP call in a c++ analysis source file
teemu.murtola at gmail.com
Fri Sep 6 20:18:37 CEST 2013
On Fri, Sep 6, 2013 at 12:23 PM, Jochen Hub <jhub at gwdg.de> wrote:
> I have added OpenMP support to g_wham and pushed the change to gerrit. I
> get errors such as:
> undefined reference to `gmx_omp_set_num_threads(int)'
> unresolved external symbol "int __cdecl gmx_omp_get_max_threads(void)"
> (?gmx_omp_get_max_threads@@YAHXZ) referenced in function gmx_wham
> The code compiles fine under Mac and linux (without and with OpenMP
Sounds suspicious, given that Jenkins fails to build it in all combinations
that have OpenMP enabled.
However, what is also strange is that I have to protect the
> mx_omp_set_num_threads() and gmx_omp_get_max_threads() with an #ifdef
> GMX_OPENMP - while this is not required in, for instance in gmx_sans.c.
> The only reason I could think of is a C vs. C++ issue.
> Can someone give a hint how to proceed?
You need to add extern "C" declarations to gmx_omp.h. See other header
files for examples.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the gromacs.org_gmx-developers