termux / termux-packages

A package build system for Termux.
https://termux.dev
Other
13.33k stars 3.07k forks source link

[Bug]: libraw compilation error #15522

Closed T-Dynamos closed 1 year ago

T-Dynamos commented 1 year ago

Problem description

I tried compiling libraw with :

TERMUX_PKG_HOMEPAGE=https://www.libraw.org
TERMUX_PKG_DESCRIPTION="A library for reading RAW files obtained from digital photo cameras (CRW/CR2, NEF, RAF, DNG, and others"
TERMUX_PKG_LICENSE="LGPL-2.1, CDDL-1.1"
TERMUX_PKG_MAINTAINER="@termux"
TERMUX_PKG_VERSION=0.21.1
TERMUX_PKG_SRCURL=https://www.libraw.org/data/LibRaw-${TERMUX_PKG_VERSION}.tar.gz
TERMUX_PKG_SHA256=630a6bcf5e65d1b1b40cdb8608bdb922316759bfb981c65091fec8682d1543cd
TERMUX_PKG_DEPENDS="littlecms, libjasper"  

It compiled successfully but at end: aarch64

make[1]: Leaving directory '/home/builder/.termux-build/libraw/build'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/unprocessed_raw'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/dcraw_emu'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/dcraw_half'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/half_mt'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/4channels'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/postprocessing_benchmark'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/multirender_test'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/raw-identify'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/simple_dcraw'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/mem_image'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/rawtextdump'
ERROR: lib/libraw.so contains undefined symbols:
   110: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT   UND __aarch64_ldadd8_acq_rel
   111: 0000000000000000     0 NOTYPE  GLOBAL DEFAULT   UND __aarch64_swp8_acq_rel

arm

make[1]: Leaving directory '/home/builder/.termux-build/libraw/build'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/unprocessed_raw'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/dcraw_emu'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/dcraw_half'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/half_mt'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/4channels'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/postprocessing_benchmark'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/multirender_test'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/raw-identify'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/simple_dcraw'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/mem_image'
ERROR: lib/libraw.so contains undefined symbols:
    13: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_uidiv
    37: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_idiv
    38: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_llsl
    46: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_idivmod
    50: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_uidivmod
    64: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_llsr
    78: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_lasr
    93: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_ldivmod
   116: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __aeabi_f2ulz
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/rawtextdump'

i686

make[1]: Leaving directory '/home/builder/.termux-build/libraw/build'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/unprocessed_raw'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/dcraw_emu'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/dcraw_half'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/half_mt'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/4channels'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/postprocessing_benchmark'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/multirender_test'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/raw-identify'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/simple_dcraw'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/mem_image'
termux-elf-cleaner: Replacing unsupported DF_1_* flags 134217729 with 1 in './bin/rawtextdump'
ERROR: lib/libraw.so contains undefined symbols:
    34: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __ashldi3
    55: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __lshrdi3
    68: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __ashrdi3
    83: 00000000     0 NOTYPE  GLOBAL DEFAULT   UND __divdi3

What steps will reproduce the bug?

Compile it

What is the expected behavior?

should compile successfully

System information

termux-info:

xtkoba commented 1 year ago

8029

Biswa96 commented 1 week ago

libraw package has been added in 773dad5a1533a83114333588bcca372aa8e295ae commit with a workaround for the aforementioned linker error.