On 01/12/2007, Konstantin Svist <fry.kun@xxxxxxxxx> wrote: > > After checking the system against a clean one and trying to copy some > things over, I tried removing the /usr/local install (by hand, since > uninstall is not really available with python source). That made > everything work. > Looking carefully at the filenames, I noticed that there were files > /usr/local/libpython2.5.so and /usr/local/libpython2.5.so.1.0 - and sure > enough, after bringing them back into /usr/local/lib/ things went back > to the broken state. > > So: > * $LD_LIBRARY_PATH is not set > * I explicitly run /usr/bin/python > * "import sys; print sys.path" doesn't mention any /usr/local directories > * "import <some package that's only available in stock python>" works > * "import <some package that's only available in custom python>" doesn't > work > > So how come it seems to use /usr/local/lib/libpython2.5.so?? Where did I > go wrong? I've pointed out before that your local install of libpython is likely the culprit, because the main python executable is linked against it and binary modules (such as CPickle.so) depend on it, too. However, I did not examine your run-time linker and python path configurations to find out how exactly you installed private stuff to /usr/local. Obviously, the /usr/local/bin/python binary contains different search paths than /usr/bin/python. And with regard to the linker, even without using LD_LIBRARY_PATH you can make available libraries in /usr/local/lib via ld.so.conf* You say you run /usr/bin/python, so print the output of "ldd /usr/bin/python", please, when /usr/local/lib/libpython2.5.so is available. Plus, the output of "python -c 'import sys; print sys.path' ".