G
Guest
Today I needed to install python from source on linux to a custom path. /usr/lib/libtk8.3.so existed, but I wanted python to link to /my/custom/path/lib/libtk8.4.so.
I had LDFLAGS set:
LDFLAGS="-L/my/custom/path/lib -Wl,-rpath,$base/lib -Wl,--enable-new-dtags"
configure looked like this:
../configure --prefix=/my/custom/path/python-2.5.1 --enable-shared
but python always linked against /usr/lib/libtk8.3.so instead of libtk8.4.so
I ended up modifying setup.py (see below) but there must be a more user-friendly way to do this. Right? Thank you for your time!
BTW, I don't have root access on this machine
--- setup.py.original 2007-07-17 12:51:27 -04:00
+++ setup.py 2007-07-17 13:21:57 -04:00
@@ -293,10 +293,14 @@
# lib_dirs and inc_dirs are used to search for files;
# if a file is found in one of those directories, it can
# be assumed that no additional -I,-L directives are needed.
+ self.compiler.library_dirs.insert(0,
+ '/my/custom/path/lib')
lib_dirs = self.compiler.library_dirs + [
'/lib64', '/usr/lib64',
'/lib', '/usr/lib',
]
+ self.compiler.include_dirs.insert(0,
+ '/my/custom/path/include')
inc_dirs = self.compiler.include_dirs + ['/usr/include']
exts = []
I had LDFLAGS set:
LDFLAGS="-L/my/custom/path/lib -Wl,-rpath,$base/lib -Wl,--enable-new-dtags"
configure looked like this:
../configure --prefix=/my/custom/path/python-2.5.1 --enable-shared
but python always linked against /usr/lib/libtk8.3.so instead of libtk8.4.so
I ended up modifying setup.py (see below) but there must be a more user-friendly way to do this. Right? Thank you for your time!
BTW, I don't have root access on this machine
--- setup.py.original 2007-07-17 12:51:27 -04:00
+++ setup.py 2007-07-17 13:21:57 -04:00
@@ -293,10 +293,14 @@
# lib_dirs and inc_dirs are used to search for files;
# if a file is found in one of those directories, it can
# be assumed that no additional -I,-L directives are needed.
+ self.compiler.library_dirs.insert(0,
+ '/my/custom/path/lib')
lib_dirs = self.compiler.library_dirs + [
'/lib64', '/usr/lib64',
'/lib', '/usr/lib',
]
+ self.compiler.include_dirs.insert(0,
+ '/my/custom/path/include')
inc_dirs = self.compiler.include_dirs + ['/usr/include']
exts = []