@shigemichik has joined the channel
I’m trying to build Racket for my Android Termux app. In the process, I noticed that passing #f to the ffi-lib function of the ffi/unsafe library results in an error. This causes the do-setup-install target in cs/c/Makefile to fail to execute. How can I get this to work?
@madeinquant has joined the channel
Hi @shigemichik
I read this part of the error: Welcome to Racket v8.2 [cs].
*; Warning: no readline support (ffi-lib: could not load foreign library
path: libedit.so.3
system error: dlopen failed: library "libedit.so.3" not found)
This means that the ffi-lib
works, nut that the readline library isn’t installed on your system.
Which system are you compiling on? And how did you start the build process?
- Install Termux on your Android phone (I’m using SHARP SH-M11) via F-Droid.
pkg update
pkg install clang make libedit
curl -LO <https://download.racket-lang.org/installers/8.2/racket-8.2-src-builtpkgs.tgz>
tar xf racket-8.2-src-builtpkgs.tgz
cd racket-8.2/src && mkdir build && cd build
../configure --prefix=$HOME/rkt
make
make install
(but this will fail)
https://github.com/racket/racket/blob/dfb48087a5bcdad077a2a780c5a044c60f76367c/racket/collects/openssl/mzssl.rkt#L229 I tried running the source code line by line, and I get an unknown error at this line.
I read the source code and tried to understand what was happening. The following code reproduces the problem. (require '#%foreign)
(ffi-lib #f)