Intel® Distribution for Python*
Engage in discussions with community peers related to Python* applications and core computational packages.

set rpath

Becker__Neal
Beginner
1,073 Views

It seems libraries in

envs/intelpython3/lib

require intel libs in

envs/intelpython3/ext/lib

but do not set rpath to find them.

Now when I build my library against intel libs, I need to set rpath.

I recommend that intel libs add rpath to find the libs in ext/libs, so users like me don't need to modify their build scripts.

0 Kudos
3 Replies
Frank_S_Intel
Employee
1,073 Views

Hi,

Any package/module you run with our python should be able to find the libs. If there is an issue we definitely want to fix it.

Most of the libs we ship do set rpath accordingly. Exceptions are MKL/IPP/DAAL. Furthermore, our python executable sets the right rpath.

Could you please give a little more detail how you're using the libs? How did you install the bits? 

frank

0 Kudos
Becker__Neal
Beginner
1,073 Views

I'm building my OWN C++ code into python modules, built against intel python libs.  This build has to be modified to build with intel python because intel python has libs in non-standard places and doesn't set rpath to find them.

The 1st place I found this problem was when build the ndarray package from

https://github.com/ndarray/ndarray

But I'm sure I'd have this problem building any modules against intel python

0 Kudos
Frank_S_Intel
Employee
1,073 Views

I take you issue is at the link-stage of your build. Is this right? If so, I don't understand the relation to rpath because it is meant to set the runtime path, not build/link-time path.

However, when running setup.py with our python for any package build - I agree it should set the library search path for (-L). We'll look into it.

As a work around, most build systems on Linux respect the environment variables CFLAGS and LDFLAGS. You might want to try setting these to "-Lenvs/intelpython3/ext/lib" (or whatever your install path is) when building your package.

Can you say which python libraries specifically you are linking against?

Also, could you say a little how you use the referenced C++ library from/within python?

0 Kudos
Reply