mirror of
https://github.com/SebastianWendel/nixpkgs.git
synced 2024-09-29 16:40:18 +02:00
d9218155d2
The following error occurs when using `imagemagickBig`: $ ./result/bin/identify sample.jp2 [1] 699089 IOT instruction (core dumped) ./result/bin/identify sample.jp2 When looking at the call-trace it seems as if certain symbols, e.g. `opj_malloc` are mixed up: #8 0x00007f78c79ad2f5 in MagickSignalHandler.cold () from /nix/store/bqy80qiw6czqh7vsmmmivwdswp9zzjgl-imagemagick-7.1.0-29/lib/libMagickCore-7.Q16HDRI.so.10 #9 <signal handler called> #10 0x00007f78c5a6095f in opj_malloc () from /nix/store/wg6ly83k1k1fjiygiv1jr7li3p6dwsvq-ghostscript-with-X-9.55.0/lib/libgs.so.9 #11 0x00007f78c5a60981 in opj_calloc () from /nix/store/wg6ly83k1k1fjiygiv1jr7li3p6dwsvq-ghostscript-with-X-9.55.0/lib/libgs.so.9 #12 0x00007f78c4f48e24 in opj_create_decompress () from /nix/store/qwalb0kjz1p9c4j48qkk6ql47ds2lnhh-openjpeg-2.4.0/lib/libopenjp2.so.7 The `opj_create_decompress()` is called from the `openjpeg`-integration of `imagemagick` and thus shouldn't affect `ghostscript` at all. However, `ghostscript` (`libgs.so` to be precise) also exposes e.g. `opj_malloc`: $ objdump -t /nix/store/wg6ly83k1k1fjiygiv1jr7li3p6dwsvq-ghostscript-with-X-9.55.0/lib/libgs.so.9.55|grep opj_malloc 0000000000205940 g F .text 000000000000002b opj_malloc Because of that, two incompatible symbols are used in the same process and thus the `identify`-call breaks because the wrong one is used. To work around that I decided to use the system-wide openjpeg instead. I'm not sure why `libgs.so` wants to expose these symbols anyways, but with that workaround the problem is solved. Even though it's mentioned that ghostscript's openjpeg is heavily patched, I think that this is somewhat outdated or at least irrelevant considering that both ArchLinux[1] and Fedora[2] use the system-wide `openjpeg` instead. [1] |
||
---|---|---|
.. | ||
acpilight | ||
ananicy | ||
ananicy-cpp | ||
apulse | ||
arm-trusted-firmware | ||
autoadb | ||
autotiling | ||
barebox | ||
base16-builder | ||
base16-shell-preview | ||
beep | ||
brightnessctl | ||
calaos/installer | ||
cbeams | ||
cliscord | ||
cups | ||
documentation-highlighter | ||
doge | ||
drivers | ||
dumb | ||
dxvk | ||
flashfocus | ||
frescobaldi | ||
ghostscript | ||
gnu-shepherd | ||
gnuk | ||
hdt | ||
i3a | ||
ite-backlight | ||
jackaudio | ||
jitsi-meet-prosody | ||
kitty-themes | ||
lguf-brightness | ||
libcardiacarrest | ||
lightspark | ||
lilypond | ||
logging | ||
long-shebang | ||
meson-tools | ||
mnemonicode | ||
mxt-app | ||
my-env | ||
openrussian-cli | ||
opensbi | ||
plasma-hud | ||
present | ||
ptouch-print | ||
pylode | ||
rich-cli | ||
riscv-pk | ||
rkdeveloptool | ||
sagetex | ||
sailsd | ||
scimark | ||
scrcpy | ||
screensavers | ||
seafile-shared | ||
sndio | ||
solfege | ||
sound-of-sorting | ||
source-and-tags | ||
stabber | ||
t-rec | ||
talkfilters | ||
tmux-plugins | ||
tpm2-pkcs11 | ||
uboot | ||
uq | ||
urbit | ||
wiki-tui | ||
xosd |