When running my executable, I get an error message as follows:
On the remote process, dlopen() failed. The error message sent back from the sink is /tmp/coi_procs/1/5145/load_lib/iccoutNYiJgR: undefined symbol: _ZN12boost_1_48_012basic_formatIcSt11char_traitsIcESaIcEErmImEERS4_RKT_
On the sink, dlopen() returned NULL. The result of dlerror() is "/tmp/coi_procs/1/5145/load_lib/iccoutNYiJgR: undefined symbol: _ZN12boost_1_48_012basic_formatIcSt11char_traitsIcESaIcEErmImEERS4_RKT_"
offload error: cannot load library to the device 0 (error code 20)
Segmentation fault (core dumped)
I know which symbol it is, and most likely this is caused by a missing "#pragma offload_attribute(push, target(mic))" before "#include <boost/format.hpp>" in one of my 10000 files that create 150 shared libraries. Question:
Is there any way that I can convice the mic-side dlopen() to tell me which shared library (.so files) is causing this message. Maybe it can even identify the source file?!?