Hi Phil, 

you have to set LD_LIBRARY_PATH explicitly :

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/chicken-4.12.0/lib

Then you should be able to invoke "csi" directly. You don't need my patch, if 
you don't mind a linker warning message each time you run "csi". 

Best Regards, 

Alexander 

Am 13. Mai 2017 03:15:30 MESZ schrieb Phil Bewig <pbe...@gmail.com>:
>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
>
>On Fri, May 12, 2017 at 6:16 PM, Alexander Shendi (web.de) <
>alexander.she...@web.de> wrote:
>
>> Dear Phil,
>>
>> It's me again.
>>
>> Some remarks:
>> I did successfully compile CHICKEN 4.12.0 on Termux/Android. Please
>use
>> that exact release as it contains several fixes for the Android
>platform.
>>
>> 1) I used PLATFORM=android as Termux uses Android's libc (Bionic)
>rather
>> than GNU libc.
>> 2) The complete make invocation I used was:
>>
>> TMPDIR=$HOME/tmp make C_COMPILER=clang PREFIX=$HOME/chickens/4.12.0
>> PLATFORM=android install
>>
>> 3) the Android dynamic linker is rather dumb and doesn't support the
>> --rpath feature used by the Makefile.
>> It spits out a warning to that effect every time you run csi/csc or
>an
>> executable made with csc.
>> This also screws up the CHICKEN test suite. I have a patch that works
>> around that
>> (see
>https://paste.call-cc.org/paste?id=a738f447edf76ecbaa7b47eeced51f
>> a138972add#a0)
>> But if you can live with the warning message and don't need to run
>the
>> test suite you don't need to apply the patch.
>>
>> 3) I did (see above).
>>
>> 4.1) CHICKEN 's library directory (e.g. $HOME/chickens/4.12.0/lib)
>must be
>> in your $LD_LIBRARY_PATH.
>> 4.2) If you want to install eggs (CHICKEN's version of packages) you
>must
>> say:
>> TMPDIR=$HOME/tmp chicken-install <eggname>
>>
>>
>> 5.) Good luck!
>>
>> 6.) Do not hesitate to ask for further info.
>>
>> Best Regards,
>>
>> Alexander
>>
>>
>> Am 12. Mai 2017 23:00:10 MESZ schrieb Phil Bewig <pbe...@gmail.com>:
>>>
>>> I recently purchased a Lenovo TAB2 A10 tablet computer and installed
>>> Termux, a unix-like environment, from the Play Store. I want to
>compile
>>> Chicken for my computer so I can have a Scheme REPL with me wherever
>I go.
>>> I have several questions:
>>>
>>> 1) What is the correct PLATFORM for the make command? Is it android?
>>> Termux isn't really android, it is its own version of unix, similar
>to
>>> Debian.
>>>
>>> 2) Are any of the optional features required or recommended for
>Termux?
>>>
>>> 3) Have any other Chicken users successfully compiled Chicken on
>Termux?
>>>
>>> 4) Is there anything else I need to know to compile Chicken on
>Termux?
>>>
>>> Thanks for your help.
>>>
>>> Phil
>>>
>>
>> --
>> Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail
>> gesendet.
>>

-- 
Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.
_______________________________________________
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users

Reply via email to