Same problem. Hope this could be fixed.
Search Criteria
Package Details: libeb 4.4.3-11
Package Actions
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: | 31 |
Popularity: | 0.094046 |
First Submitted: | 2014-05-26 16:40 (UTC) |
Last Updated: | 2024-05-23 11:01 (UTC) |
Dependencies (2)
- perl (perl-gitAUR)
- zlib (zlib-ng-compat-gitAUR, zlib-gitAUR, zlib-ng-compat)
Required by (8)
Sources (2)
wang1zhen commented on 2025-05-13 07:14 (UTC)
temnyk commented on 2025-05-03 09:52 (UTC) (edited on 2025-05-04 08:06 (UTC) by temnyk)
This no longer builds @aksr. Something to do with getenv()
.
getopt.c:90:14: error: conflicting types for ‘getenv’; have ‘char *(void)’
90 | extern char *getenv();
| ^~~~~~
In file included from getopt.c:46:
/usr/include/stdlib.h:773:14: note: previous declaration of ‘getenv’ with type ‘char *(const char *)’
773 | extern char *getenv (const char *__name) __THROW __nonnull ((1)) __wur;
| ^~~~~~
getopt.c: In function ‘getopt_internal’:
getopt.c:77:29: error: too many arguments to function ‘getenv’; expected 0, have 1
77 | #define IS_POSIXLY_CORRECT (getenv("POSIXLY_CORRECT") != NULL)
| ^~~~~~ ~~~~~~~~~~~~~~~~~
getopt.c:80:27: note: in expansion of macro ‘IS_POSIXLY_CORRECT’
80 | #define IN_ORDER (!IS_POSIXLY_CORRECT && *options == '-')
UPDATE:
A workaround is to edit PKGBUILD, adding this sed command alongside the other sed commands inside prepare()
:
sed -e 's/extern char \*getenv();//g' \
-i 'libebutils/getopt.c'
Rhinoceros commented on 2024-05-23 12:09 (UTC)
Thanks @aksr, the package seems to build fine now.
hirobot commented on 2024-05-21 06:39 (UTC)
Thank you @4lex4.
For now, this is the patch to apply to ibeb-4.4.3-14-010_debian.patch. patch libeb-4.4.3-14-010_debian.patch < puts_eucjp.c.patch
puts_eucjp.c.patch: 305a306,321
diff --git a/libebutils/puts_eucjp.c b/libebutils/puts_eucjp.c index 678b296..5f7a88e 100644 --- a/libebutils/puts_eucjp.c +++ b/libebutils/puts_eucjp.c @@ -93,8 +93,8 @@ fputs_eucjp_to_locale(const char string, FILE stream) in_left = string_length + 1; out_p = buffer; out_left = buffer_size; - - if (iconv(cd, &in_p, &in_left, &out_p, &out_left) != -1) + + if (iconv(cd, (char *) &in_p, &in_left, &out_p, &out_left) != -1) break; if (errno == E2BIG) { /
Rhinoceros commented on 2024-05-20 09:39 (UTC)
Thanks for the patch @4lex4.
@aksr can you please fix this package, or if you are no longer interested in maintaining it, disown the package?
4lex4 commented on 2024-05-09 22:28 (UTC) (edited on 2024-05-09 23:39 (UTC) by 4lex4)
The patch fixes the issue of passing an incompatible pointer in libebutils/puts_eucjp.c
:
--- a/libebutils/puts_eucjp.c +++ b/libebutils/puts_eucjp.c @@ -94,7 +94,7 @@ out_p = buffer; out_left = buffer_size; - if (iconv(cd, &in_p, &in_left, &out_p, &out_left) != -1) + if (iconv(cd, (char **) &in_p, &in_left, &out_p, &out_left) != -1) break; if (errno == E2BIG) { /*
You can append it to libeb-4.4.3-14-010_debian.patch
, just remember to update the sha256sums
in the PKGBUILD
for the file, or set it to SKIP
.
MarsSeed commented on 2023-10-08 00:54 (UTC)
It is better to keep the replaces field here.
MarsSeed commented on 2023-10-07 19:47 (UTC)
@xiota, the replaces directive is genuine here, as there used to be an AUR/eb-library package, which was a duplicate of this one under a different name.
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.