[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] Chicken on Termux
From: |
Phil Bewig |
Subject: |
Re: [Chicken-users] Chicken on Termux |
Date: |
Fri, 12 May 2017 20:15:30 -0500 |
I began as John suggested with the following command line:
TMPDIR=$HOME/tmp make C_COMPILER=clang PREFIX=$HOME/chicken-4.12.0 PLATFORM=linux install
This ran fine (about ten minutes) until it encountered an error on the line:
clang -L. chicken.o batch-driver.o compiler.o optimizer.o lfa2.o compiler-syntax.o scrutinizer.o support.o c-platform.o c-backend.o -o chicken -lchicken -W1,-R"." -lm -ldl
The error message is:
./libchicken.so: undefined reference to '__android_log_vprint'
clan-4.0: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [rules.make:247: chicken] Error 1
So I erased everything, untarred again, and did as Alexander suggested:
TMPDIR=$HOME/tmp make C_COMPILER=clang PREFIX=$HOME/chicken-4.12.0 PLATFORM=android install
The compile completed successfully, but when I run ./csi I get an error:
CANNOT LINK EXECUTABLE: could not load library "libchicken.so" needed by "./csi"; caused by library "libchicken.so" not found
Of course, libchicken.so is in the same directory as csi. I suppose that is the linker error Alexander talked about. I have questions:
1) How do I work around the link error and run csi?
2) Alexander: How do I apply your patch? (I'm not adept with C.) Is your patch forward-compatible so it will work on future versions of chicken?
3) Is there a way to compile chicken so the library is included statically and doesn't require a dynamically-loaded library? (I would prefer that to a patch.)
Thanks again,
Phil