Open cattokomo opened 3 months ago
Hi @cattokomo,
After a bit of investigating, this instruction should definitely be available even when compiling for Thumb2. I suspect maybe your clang is targetting Armv7-M. What is the target provided by clang -v ?
Hello @cognet.
Here's the output of clang -v
.
~ $ clang -v
clang version 18.1.7
Target: armv7a-unknown-linux-android24
Thread model: posix
InstalledDir: /data/data/com.termux/files/usr/bin
@cattokomo sorry for taking so long to respond, I'd like to fix that, but it sounds like a Termux-specific thing, can you help me reproduce the problem? I assume I have to install Termux on an Android device, but my phone has a 64bits arm, so it brings a 64bits compiler, and that seems to work fine here. Do you know of a way I could get access to a Termux running on 32bits arm? Thank you!
@cattokomo sorry for taking so long to respond, I'd like to fix that, but it sounds like a Termux-specific thing, can you help me reproduce the problem? I assume I have to install Termux on an Android device, but my phone has a 64bits arm, so it brings a 64bits compiler, and that seems to work fine here. Do you know of a way I could get access to a Termux running on 32bits arm? Thank you!
I can try it on my device, it's running on 32 bit mode.
@cattokomo ideally I'd need a shell on it, to try various things
I've stumbled upon this error when building libck for Termux with clang on arm.
clang error
``` In file included from /home/builder/.termux-build/libck/src/src/ck_ec.c:1: In file included from /home/builder/.termux-build/libck/src/include/ck_ec.h:253: In file included from /home/builder/.termux-build/libck/src/include/ck_pr.h:64: /home/builder/.termux-build/libck/src/include/gcc/arm/ck_pr.h:150:1: error: instruction requires: arm-mode CK_PR_DOUBLE_LOAD(uint64_t, 64) ^ /home/builder/.termux-build/libck/src/include/gcc/arm/ck_pr.h:143:19: note: expanded from macro 'CK_PR_DOUBLE_LOAD' __asm __volatile("ldrexd %0, [%1]" \ ^