Package Details: libeb 4.4.3-11

Git Clone URL: https://aur.archlinux.org/libeb.git (read-only, click to copy)
Package Base: libeb
Description: C library for accessing CD-ROM books. Supports EB, EBG, EBXA, EBXA-C, S-EBXA and EPWING formats.
Upstream URL: http://www.mistys-internet.website/eb/index-en.html
Keywords: eb ebg ebook ebxa ebxa-c epwing s-ebxa
Licenses: BSD
Conflicts: eb-library
Provides: eb-library, libeb.so
Replaces: eb-library
Submitter: aksr
Maintainer: aksr
Last Packager: aksr
Votes: 30
Popularity: 0.33
First Submitted: 2014-05-26 16:40 (UTC)
Last Updated: 2024-05-23 11:01 (UTC)

Pinned Comments

MarsSeed commented on 2022-04-07 10:06 (UTC) (edited on 2022-04-07 10:32 (UTC) by MarsSeed)

This package now replaces eb-library as that has been deleted.

(That package was providing the same build as this one, but was orphaned for quite some time before deletion.)

Comments from the page of that package have been imported here so they are not lost.

Latest Comments

« First ‹ Previous 1 2 3 4 Next › Last »

MarsSeed commented on 2022-06-08 02:27 (UTC) (edited on 2022-06-08 12:43 (UTC) by MarsSeed)

I've removed the force-linking of libiconv, libnsl and libresolv to the libeb.so file by the autoconf scripts, because those links ended up unused:

$ namcap libeb-4.4.3-8-x86_64.pkg.tar.zst

libeb W: Unused shared library '/usr/lib/libiconv.so.2' by file ('usr/lib/libeb.so.16.0.0')
libeb W: Unused shared library '/usr/lib/libnsl.so.3' by file ('usr/lib/libeb.so.16.0.0')
libeb W: Unused shared library '/usr/lib/libresolv.so.2' by file ('usr/lib/libeb.so.16.0.0')

Please build libeb 4.4.3-9 and report if you have any errors. (If you encounter new errors, please ensure you rebuild the applications that use this library as well.)

mvf commented on 2022-05-21 11:26 (UTC)

@MarsSeed Cheers, I do believe this is the best solution. The pthread code clearly hasn't seen much use. Leaving it disabled also keeps binary compatibility with other distros.

MarsSeed commented on 2022-05-21 11:11 (UTC)

@mvf Thanks for bringing this to my attention.

I'm disabling pthreads as that is the default in source, and I don't know enough about C programming to fix the code beyond doubt for parallel execution.

mvf commented on 2022-05-21 09:40 (UTC)

@MarsSeed Since 4.4.3-7 added the --enable-pthread configure flag, libeb crashes with an assertion in glibc (qolibri upstream issue):

qolibri: tpp.c:83: __pthread_tpp_change_priority: Assertion `new_prio == -1 || (new_prio >= fifo_min_prio && new_prio <= fifo_max_prio)' failed.
zsh: IOT instruction  qolibri

The assertion can vary, it's undefined behavior after all. The following patch seems to fix it for me:

--- a/eb/readtext.c
+++ b/eb/readtext.c
@@ -1560,7 +1560,7 @@ eb_is_text_stopped(EB_Book *book)
 {
     int is_stopped = 0;

-    eb_lock(book);
+    eb_lock(&book->lock);
     LOG(("in: eb_is_text_stopped(book=%d)", (int)book->code));

     if (book->subbook_current != NULL) {

Another option would be to remove --enable-pthread again. I haven't seen other distros ship this option, so apps already serialize libeb API calls (and it's generally more efficient that way).

Thanks for maintaining this package! :)

MarsSeed commented on 2022-04-07 10:06 (UTC) (edited on 2022-04-07 10:32 (UTC) by MarsSeed)

This package now replaces eb-library as that has been deleted.

(That package was providing the same build as this one, but was orphaned for quite some time before deletion.)

Comments from the page of that package have been imported here so they are not lost.

JimPix commented on 2022-02-19 14:22 (UTC)

replacing the pkgbuild source field still marks the package as out of date..

<deleted-account> commented on 2022-01-10 18:46 (UTC)

Replace PKGBUILD source field with https://github.com/mistydemeo/eb/releases/download/v4.4.3/eb-4.4.3.tar.bz2

therico commented on 2021-10-05 04:53 (UTC)

Also breaks qolibri for the same reason.

argo commented on 2021-09-12 23:49 (UTC) (edited on 2021-09-14 20:57 (UTC) by argo)

goldendict-git failed to load after recent libnsl release with a major sobump which broke libeb (libeb.so.16 could not load libnsl.so.2).

Basically, this should be rebuilt locally.

EDIT: fixed the ambiguous wording and wrong assumptions, sorry for the noise.