Re: Enchant versions



Hi Peter,

On 2017.12.10 17:42, Peter Bloomfield wrote:
On 12/10/2017 04:44:08 PM Sun, Jack wrote:
On 2017.12.10 15:50, Peter Bloomfield wrote:
On 11/20/2017 11:45:15 AM Mon, Helmut Jarausch wrote:
…
Upgrading from enchant-1.6.0 to enchant-1.6.1 causes this error above.

Great work isolating that--many thanks!

I haven't found a way to get Balsa working with enchant-1.6.1. But a number of newer versions of enchant have been released[0], and at least the current version (2.1.3) is parallel-installable with 1.6.0 with a new pkg-config name, enchant-2. I've installed it from a tarball and tested it with Balsa's internal spell-checker, and it works without crashing. I also tested Balsa with with gspell built from git master (= 1.7.1?), which requires enchant-2, and that also works. No changes were needed in Balsa's spell-checking code in either case.

To be ready for new enchant releases, I've pushed build system changes to look first for enchant-2, and then for enchant <= 1.6.0. The build now fails if the enchant version is 1.6.1 with a message that version <= 1.6.0 is needed, which is better than building a Balsa that crashes.

The autotools version (configure.ac and friends) works fine. With enchant-2.1.3 installed with prefix=/usr/local, the meson/ninja version fails to link to libenchant-2, though I found nothing wrong in the ninja.build script. Perhaps it will be OK with prefix=/usr--I haven't tried that.

Best,

Peter

[0] https://github.com/AbiWord/enchant/releases

I'm sending this from a meson/ninja compiled balsa (git head) against enchant-2.1.1. Gentoo doesn't have 2.1.2 or 2.1.3 yet, but I might try them to see if they really are co-installable with the earlier version. I don't know if 2.1.1 is, but Gentoo has packaged it as if it is NOT.

During the final linking, I got one error:
/usr/lib/gcc/x86_64-pc-linux-gnu/6.4.0/../../../../x86_64-pc-linux-gnu/bin/ld: warning: libenchant.so.1, needed by /usr/lib64/libwebkit2gtk-4.0.so, may conflict with libenchant.so.2, although the compiled balsa seems to link against both libenchant.so.2 => /usr/lib64/libenchant.so.2 (0x00007fece7264000) libenchant.so.1 => /usr/lib64/libenchant.so.1 (0x00007fecddff4000) (from ldd src/balsa | grep enchant.) although both are provided by enchant-2.1.1.

Jack
(At least on Gentoo, enchant2 seems not ready for prime time, as there are other packages which do not yet compile against it.)

Thanks for testing! I didn't get that error, but "ldd src/balsa | grep enchant" shows:

        libenchant-2.so.2 => not found
        libenchant.so.1 => /lib64/libenchant.so.1 (0x00007f2f74648000)

so perhaps the linker is choosing not to link to libenchant-2 because of the conflict.

So can you check spelling without crashing?
One thing you might try is "ldconfig -p | grep enchant" (might need to be root or use sudo) to see if the system really knows where to find the libraries. Using /lib instead of /usr/lib (lib or lib64) seems a bit odd, so I wouldn't be too surprised if it doesn't even look in /usr/local/lib. "man ldconfig" should tell you where your distro puts the list of libraries to be checked.

I did try right clicking on some red underlined words, and it worked fine, showing a reasonable list of alternatives, although I didn't try actually changing any. Right now, I've reverted to 1.6 to see if I can actually install 2.1.3 alongside.

Jack


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]