Comment 11 for bug 1956852

Revision history for this message
alexis rivera (riveraah) wrote :

Another thing I found is that Termux uses clang instead of gcc.

I merged the changes suggested in comment #10. The compilation went a lot further with ECL 16.1.3. But it failed with two errors:
ld.lld: error: undefined symbol: getdtablesize
>>> referenced by run-program.c:106
>>> run-program.o:(closefrom_fallback)
>>> referenced by run-program.c:106
>>> run-program.o:(closefds_from)

ld.lld: error: undefined symbol: current_thread
>>> referenced by arm64-assem.S:147
>>> arm64-assem.o:(call_into_lisp)
>>> referenced by arm64-assem.S:148
>>> arm64-assem.o:(call_into_lisp)
clang-13: error: linker command failed with exit code 1 (use -v to see invocation)

It seems that getdtablesize is deprecated so they don't include it. I went to the run-program.c and force the call to
 maxfd = sysconf(_SC_OPEN_MAX)-1;

instead, which got rid of one error. However, I don't know how to workaround the current_thread missing symbol.

Attached are the logs.