From: Barry Warsaw Date: Mon, 24 Jun 2002 20:27:33 +0000 (+0000) Subject: In the Extension() call, add runtime_library_dirs so that a useful X-Git-Tag: v2.3c1~5234 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6fe3d7009e0214cc994889a830299be6df7acb92;p=python In the Extension() call, add runtime_library_dirs so that a useful -R/--rpath flag gets passed to the linker. Source builds of BerkeleyDB do their default installs in locations not normally on ld.so's search path. --- diff --git a/setup.py b/setup.py index 1012645914..d09602e5fa 100644 --- a/setup.py +++ b/setup.py @@ -507,15 +507,25 @@ class PyBuildExt(build_ext): dblibs = [dblib] raise found except found: + # A default source build puts Berkeley DB in something like + # /usr/local/Berkeley.3.3 and the lib dir under that isn't + # normally on ld.so's search path, unless the sysadmin has hacked + # /etc/ld.so.conf. We add the directory to runtime_library_dirs + # so the proper -R/--rpath flags get passed to the linker. This + # is usually correct and most trouble free, but may cause problems + # in some unusual system configurations (e.g. the directory is on + # an NFS server that goes away). if dbinc == 'db_185.h': exts.append(Extension('bsddb', ['bsddbmodule.c'], library_dirs=[dblib_dir], + runtime_library_dirs=[dblib_dir], include_dirs=db_incs, define_macros=[('HAVE_DB_185_H',1)], libraries=[dblib])) else: exts.append(Extension('bsddb', ['bsddbmodule.c'], library_dirs=[dblib_dir], + runtime_library_dirs=[dblib_dir], include_dirs=db_incs, libraries=[dblib])) else: