From: Compro P. <com...@gm...> - 2017-05-19 09:01:07
|
When I gave the '-ggdb' switch to 'make' the build fails at "src/foreign1.lisp" due to absence of FFI. But I have it installed. Giving the path is necessary Tail of "../configure --enable-portability --with-threads=POSIX_THREADS" : Configure findings: FFI: yes (user requested: default) readline: yes (user requested: default) libsigsegv: yes ./makemake --with-dynamic-ffi --enable-portability --with-threads=POSIX_THREADS > Makefile cp -p ../src/cfgunix.lisp config.lisp chmod +w config.lisp echo '(setq *clhs-root-default* " http://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/")' >> config.lisp To continue building CLISP, the following commands are recommended (cf. unix/INSTALL step 4 ff): /usr/bin/nano config.lisp make # CLISP self-test: make check # Test non-portable features and modules make extracheck mod-check << EOF Are the other flags necessary as pointed by Don Cohen? : > gcc -m64 -g -O2 -W -Wswitch -Wcomment -Wpointer-arith -Wreturn-type -Wmissing-declarations -Wimplicit -Wno-sign-compare -Wno-format-nonliteral -Wno-shift-negative-value -fwrapv -pthread -fno-strict-aliasing -ggdb -O0 -DDEBUG_OS_ERROR -DDEBUG_SPVW -DDEBUG_BYTECODE -DSAFETY=3 -DENABLE_UNICODE -DMULTITHREAD -DPOSIX_THREADS -DNO_TERMCAP_NCURSES -DDYNAMIC_FFI -DDYNAMIC_MODULES -Wl,--export-dynamic 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 zthread.o built.o modules.o libgnu.a -ldl /usr/local/lib/libavcall.a /usr/local/lib/libcallback.a /usr/local/lib64/libsigsegv.a -lc -o lisp.run instead my build compiles like this: gcc -ggdb -Wl,--export-dynamic 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 zthread.o built.o modules.o libgnu.a -lreadline -lncurses -ldl /usr/local/lib/libavcall.a /usr/local/lib/libcallback.a -lsigsegv -o lisp.run And it doesn't stop there. "lisp.run" executes successfully but fails after sometime when using "make CFLAGS+=-ggdb" : ./lisp.run -B . -N locale -E UTF-8 -Emisc 1:1 -Epathname 1:1 -norc -m 2MW -M halfcompiled.mem -q -c ../src/foreign1.lisp -o ./ ;; Compiling file /mnt/eb7b593c-d20e-4393-be34-3b108921f50e/home/compro/Dropbox/programs/hg/clisp/src/foreign1.lisp ... *** - SYSTEM::%FIND-PACKAGE: There is no package with name "FFI" 0 errors, 0 warnings make: *** [Makefile:1682: foreign1.fas] Error 1 << EOF I have Makefile.devel . Does it need attention? Again I am pointing out that MT builds using --enable-portability go well when using "make" but does segfault when running the clisp binary. When not using "--enable-portability" the build goes same as Don Cohen. But instead of "make" if "make CFLAGS+=-ggdb" is used the build goes same as described above in this email. |