Date: Tue, 11 Sep 2018 10:34:13 +0000 From: bugzilla-noreply@freebsd.org To: python@FreeBSD.org Subject: [Bug 227939] devel/boost-python-libs vs ctypes.util.find_library Message-ID: <bug-227939-21822-Gakgf6gUEw@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-227939-21822@https.bugs.freebsd.org/bugzilla/> References: <bug-227939-21822@https.bugs.freebsd.org/bugzilla/>
index | next in thread | previous in thread | raw e-mail
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=227939 --- Comment #11 from Jan Beich <jbeich@FreeBSD.org> --- (In reply to Wiktor Niesiobedzki from comment #9) > another strategy available on Linux - invoking gcc in trace mode and extracting library path from there. Why Python cannot use dlinfo()? $ cat a.c #define _GNU_SOURCE #include <dlfcn.h> #include <link.h> #include <stdio.h> int main() { void *boost, *python; struct link_map *map; /* libboost_python assumes libpython is preloaded by Python interpreter */ if (!(python = dlopen("libpython3.6m.so", RTLD_LAZY | RTLD_GLOBAL))) { printf("dlopen(python) failed\n"); return 1; } if (!(boost = dlopen("libboost_python36.so", RTLD_LAZY))) { printf("dlopen(boost) failed\n"); return 1; } dlinfo(boost, RTLD_DI_LINKMAP, &map); dlclose(boost); dlclose(python); printf("%s\n", map->l_name); return 0; } $ cc -ldl a.c $ ./a.out /usr/local/lib/libboost_python36.so -- You are receiving this mail because: You are the assignee for the bug. You are on the CC list for the bug.help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-227939-21822-Gakgf6gUEw>
