[SciPy-User] swig and OpenMP
Dag Sverre Seljebotn
dagss at student.matnat.uio.no
Fri Feb 12 10:15:30 EST 2010
Rohit Garg wrote:
> It's another symptom of a much bigger disease.
>
> Whenever you ask your compiler (atleast GCC) to instrument your code,
> certain symbols are added. These symbols are
> undocumented/subject-to-change.
>
> Whenever you try to import such a module into python, the dynamic
> library loader will complain about these symbols.
>
> For instance, if you try to compile your extension module with
> Profile guided optimization, you'll land into the same problems.
>
> The only reasonable fix I see for these kinds of problems is to embed
> Python instead of extending it. Unfortunately, it also seems to be a
> lot less popular/easy/common.
>
In some situations, it might help to simply call sys.setdlopenflags though:
import sys
import ctypes
try:
_old_rtld = sys.getdlopenflags()
sys.setdlopenflags(_old_rtld|ctypes.RTLD_GLOBAL)
import yourmod
finally:
sys.setdlopenflags(_old_rtld)
Dag Sverre
More information about the SciPy-User
mailing list