Comment # 6 on bug 1141993 from
Definitely, it's preferring libenchant 1 to enchant 2

  def _e_path_possibilities():
      """Generator yielding possible locations of the enchant library."""
      # Allow it to be overridden using an environment variable.
      yield os.environ.get("PYENCHANT_LIBRARY_PATH")
      # For linuxish systems, allow default soname lookup a chance to succeed.
      if sys.platform not in ("win32", "darwin"):
          yield "libenchant.so.1.6.0"
          yield "libenchant.so.1"
          yield "libenchant.so"
      # See if ctypes can find the library for us, under various names.
      yield find_library("enchant-2")
      yield find_library("enchant")
      yield find_library("libenchant")
      yield find_library("libenchant-1")
      # Special-case handling for enchant installed by macports.
      if sys.platform == 'darwin':
           yield "/opt/local/lib/libenchant.dylib"

We currently have libenchant.so.1.6.1, so basically, if PYENCHANT_LIBRARY_PATH
is not set, that gives valid results first for "libenchant.so.1" (if
libenchant1 is installed, and it's installed by enchant-1-backend-voikko) and
for find_library("enchant-2") (which is the one that was used in my first
successfull test), and then find_library("enchant"), gives a reference to
"libenchant.so.1" again.

So I'd say our options are:
1) Remove the special case of preferring libenchant 1 on "linuxish systems"
2) Make enchant-1-backend-voikko require enchant-1-backends
3) All of the above

Opinions?


You are receiving this mail because: