This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Using the '--with-ffcall' configuration option with 'clisp'


I wrote:

There appears to be a contradiction between the Cygwin announcement
and the upstream clisp announcement.  The upstream announcement states
that the configuration option '--with-dynamic-ffi' has been replaced by
the option '--with-ffcall', but the Cygwin announcement states that the
no-longer-supported '--with-dynamic-ffi' configuration option was used.


Reini Urban wrote:

> I couldn't get it with --with-ffcall to find the ffcall libs on my build
> machine, --with-dynamic-ffi works still fine. On my development laptop
> --with-ffcall worked okay.  The end product is the same.

When I attempted to generate 'clisp' using 'cygport ... compile' using the 'clisp-2.44-1.cygport'
provided by 'setup', errors were generated when gcc attempted to link 'lisp.exe' (error messages
included at the end of this message). So, I replaced '--with-dynamic-ffi' with '--with-ffcall' in
CYGCONF_ARGS in clisp-2.44-1.cygport. This initially did not fix the problem when I re-ran
'cygport ... compile' (presumably because of cached configuration results?). I restarted the
process with 'cygport ... finish prep compile', and this eliminated the compilation errors (i.e.,
the 'gcc' linker command included the static libraries /usr/lib/libavcall.a and /usr/lib/libcallback.a).


Could you update the clisp '.cygport' file to use '--with-ffcall' instead of '--with-dynamic-ffi', or
is there some other factor I am not considering?


P.S.,
   The generated lisp appears to be quite good (from the clisp .log file):

finished 52 files: 0 errors out of 10,812 tests

---------
Link error messages:

gcc -O2 -pipe -Igllib -W -Wswitch -Wcomment -Wpointer-arith -Wimplicit -Wreturn-type -Wmissing-declarations -Wno-sign-compare -O2 -fexpensive-optimizations -falign-functions=4 -DUNICODE -DDYNAMIC_FFI -DNO_GETTEXT -I. -x none spvw.o spvwtabf.o spvwtabs.o spvwtabo.o eval.o control.o encoding.o pathname.o stream.o socket.o io.o funarg.o array.o hashtabl.o list.o package.o record.o weak.o sequence.o charstrg.o debug.o error.o misc.o time.o predtype.o symbol.o lisparit.o i18n.o foreign.o unixaux.o built.o ari80386.o gllib/uniwidth/width.o gllib/uniname/uniname.o gllib/localcharset.o modules.o -lncurses -L/usr/lib -lsigsegv -o lisp.exe
foreign.o:foreign.c:(.text+0xa80): undefined reference to `_is_trampoline_r'
foreign.o:foreign.c:(.text+0xaa4): undefined reference to `_trampoline_r_address'
foreign.o:foreign.c:(.text+0xaa9): undefined reference to `___vacall_r'
foreign.o:foreign.c:(.text+0xab3): undefined reference to `_trampoline_r_data0'
foreign.o:foreign.c:(.text+0xac2): undefined reference to `_trampoline_r_data1'
foreign.o:foreign.c:(.text+0xb78): undefined reference to `_free_trampoline_r'
foreign.o:foreign.c:(.text+0xbf6): undefined reference to `_is_trampoline_r'
foreign.o:foreign.c:(.text+0xc02): undefined reference to `_trampoline_r_address'
foreign.o:foreign.c:(.text+0xc07): undefined reference to `___vacall_r'
foreign.o:foreign.c:(.text+0xc7f): undefined reference to `_trampoline_r_data0'
foreign.o:foreign.c:(.text+0xc8e): undefined reference to `_trampoline_r_data1'
foreign.o:foreign.c:(.text+0x43e4): undefined reference to `___structcpy'
foreign.o:foreign.c:(.text+0x4f3a): undefined reference to `___va_error1'
foreign.o:foreign.c:(.text+0x4fa4): undefined reference to `___va_error1'
foreign.o:foreign.c:(.text+0x4fcb): undefined reference to `___va_error1'
foreign.o:foreign.c:(.text+0x5007): undefined reference to `___va_error1'
foreign.o:foreign.c:(.text+0x5079): undefined reference to `___va_error1'
foreign.o:foreign.c:(.text+0x5094): more undefined references to `___va_error1' follow
foreign.o:foreign.c:(.text+0x6cc8): undefined reference to `___vacall_r'
foreign.o:foreign.c:(.text+0x6ccd): undefined reference to `_alloc_trampoline_r'
foreign.o:foreign.c:(.text+0x7ddf): undefined reference to `___vacall_r'
foreign.o:foreign.c:(.text+0x7de4): undefined reference to `_alloc_trampoline_r'
foreign.o:foreign.c:(.text+0x88c9): undefined reference to `___builtin_avcall'
foreign.o:foreign.c:(.text+0x4fee): undefined reference to `___structcpy'
collect2: ld returned 1 exit status
make: *** [lisp.exe] Error 1
*** ERROR: configure failed



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]