HiTECNOLOGYs / cl-charms

More up-to-date version of cl-charms. Forked it because it was, apparently, abandoned by author and I couldn't contact him.
https://gitorious.org/cl-charms
Other
158 stars 29 forks source link

(ql:quickload :cl-charms) fails on Windows with CCL 1.11 #41

Open ohmree opened 7 years ago

ohmree commented 7 years ago

I compiled the Win32a version of pdcurses from here with WIDE, UTF-8 and DLL all set to Y (only managed to compile it on cloud9 using mingw32-w64, got a .dll file and a .a file)
I moved curses.h to mingw's include/ncurses.h, moved the .a file to mingw's lib/ncurses.a and moved pdcurses.dll (under the name ncurses.dll and libcurses.dll) to the directory in which the ccl binary resides (I also have SDL2.dll in my CCL directory) and to mingw's lib directory I tried to do

(ql:quickload :cl-charms)

But I get this error:

External process exited with code 123.
Command was: "C:/Documents and Settings/xp/Application Data/common-lisp/ccl-1.11-f96-win-x86/d/Program Files/Lispbox/lispbox/quicklisp/dists/quicklisp/software/cl-charms-20151218-git/src/low-level/curses-grovel.exe" "C:/Documents and Settings/xp/Application Data/common-lisp/ccl-1.11-f96-win-x86/d/Program Files/Lispbox/lispbox/quicklisp/dists/quicklisp/software/cl-charms-20151218-git/src/low-level/curses-grovel.grovel-tmp.lisp"
Output was:
   [Condition of type CFFI-GROVEL:GROVEL-ERROR]

Restarts:
 0: [RETRY] Retry PROCESS-OP on #<GROVEL-FILE "cl-charms" "low-level" "curses-grovel">.
 1: [ACCEPT] Continue, treating PROCESS-OP on #<GROVEL-FILE "cl-charms" "low-level" "curses-grovel"> as having been successful.
 2: [RETRY] #<error printing RESTART #x2E3166E>
 3: [CLEAR-CONFIGURATION-AND-RETRY] #<error printing RESTART #x2E31696>
 4: [ABORT] Give up on "cl-charms"
 5: [RETRY] Retry SLIME REPL evaluation request.
 --more--

Backtrace:
  0: (CFFI-GROVEL:GROVEL-ERROR "External process exited with code ~S.~@\n                     Command was: ~S~{ ~S~}~@\n                     Output was:~%~A" 123 "C:/Documents and Settings/xp/Application D..
  1: (CFFI-GROVEL::INVOKE "C:/Documents and Settings/xp/Application Data/common-lisp/ccl-1.11-f96-win-x86/d/Program Files/Lispbox/lispbox/quicklisp/dists/quicklisp/software/cl-charms-20151218-git/src/low-l..
  2: (CFFI-GROVEL:PROCESS-GROVEL-FILE #P"d:/Program Files/Lispbox/lispbox/quicklisp/dists/quicklisp/software/cl-charms-20151218-git/src/low-level/curses-grovel.lisp" #P"C:/Documents and Settings/xp/Applica..
  3: (#<STANDARD-METHOD ASDF/ACTION:PERFORM (CFFI-GROVEL::PROCESS-OP CFFI-GROVEL:GROVEL-FILE)> #<PROCESS-OP > #<GROVEL-FILE "cl-charms" "low-level" "curses-grovel">)
  4: (CCL::%%BEFORE-AND-AFTER-COMBINED-METHOD-DCODE (NIL #<STANDARD-METHOD ASDF/ACTION:PERFORM (CFFI-GROVEL::PROCESS-OP CFFI-GROVEL:GROVEL-FILE)> . 11937086))
  5: (CCL::%%STANDARD-COMBINED-METHOD-DCODE ((#<STANDARD-METHOD ASDF/ACTION:PERFORM :BEFORE (ASDF/OPERATION:OPERATION ASDF/COMPONENT:COMPONENT)>) ..))) 11937086)
  6: (NIL #<Unknown Arguments>)
  7: (CCL::%CALL-NEXT-METHOD (NIL #<STANDARD-METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS (T T)> . 11937127))
  8: (#<STANDARD-METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS :AROUND (T T)> #<PROCESS-OP > #<GROVEL-FILE "cl-charms" "low-level" "curses-grovel">)
  9: (CCL::%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS :AROUND (T T)> #<STANDARD-METHOD ASDF/ACTION:PERFORM-WITH-RESTARTS (T T)>) 11937127)
 10: (NIL #<Unknown Arguments>)
 11: (#<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN (LIST)> ((#<PREPARE-OP > . #<SYSTEM "uiop">) (#<COMPILE-OP > . #<SYSTEM "uiop">) (#<LOAD-OP > . #<SYSTEM "uiop">) ..))) :FORCE NIL)
 12: (CCL::%CALL-NEXT-METHOD (NIL #<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN (LIST)> . 11937188))
 13: (CCL::CALL-WITH-COMPILATION-UNIT #<COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::WITH-COMPILATION-UNIT-BODY (ASDF/PLAN:PERFORM-PLAN :AROUND (T))) #x2E3148E> :OVERRIDE NIL)
 14: (#<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)> ((#<PREPARE-OP > . #<SYSTEM "uiop">) (#<COMPILE-OP > . #<SYSTEM "uiop">) (#<LOAD-OP > . #<SYSTEM "uiop">) ..))))
 15: (CCL::%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)> #<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN (LIST)>) 11937188)
 16: (NIL #<Unknown Arguments>)
 17: (CCL::%CALL-NEXT-METHOD (NIL #<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN (T)> . 11937241))
 18: (CCL::CALL-WITH-COMPILATION-UNIT #<COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::WITH-COMPILATION-UNIT-BODY (ASDF/PLAN:PERFORM-PLAN :AROUND (T))) #x2E3151E> :OVERRIDE NIL)
 19: (#<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)> #<ASDF/PLAN:SEQUENTIAL-PLAN #xD013026>)
 20: (CCL::%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN :AROUND (T)> #<STANDARD-METHOD ASDF/PLAN:PERFORM-PLAN (T)>) 11937241)
 21: (NIL #<Unknown Arguments>)
 22: (#<STANDARD-METHOD ASDF/OPERATE:OPERATE (ASDF/OPERATION:OPERATION ASDF/COMPONENT:COMPONENT)> #<LOAD-OP :VERBOSE NIL> #<SYSTEM "cl-charms"> :VERBOSE NIL)
 23: (CCL::%CALL-NEXT-METHOD ((NIL) #<STANDARD-METHOD ASDF/OPERATE:OPERATE (ASDF/OPERATION:OPERATION ASDF/COMPONENT:COMPONENT)> #<LOAD-OP :VERBOSE NIL> #<SYSTEM "cl-charms"> :VERBOSE NIL))
 24: ((:INTERNAL (ASDF/OPERATE:OPERATE :AROUND (T T))))
 25: (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :AROUND (T T)> #<LOAD-OP :VERBOSE NIL> #<SYSTEM "cl-charms"> :VERBOSE NIL)
 26: (CCL::%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :AROUND (T T)> (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :BEFORE #> #<#>) NIL ..))) 11937313)
 27: (NIL #<Unknown Arguments>)
 28: (CCL::%CALL-NEXT-METHOD ((NIL) #<STANDARD-METHOD ASDF/OPERATE:OPERATE (SYMBOL T)> ASDF/LISP-ACTION:LOAD-OP "cl-charms" :VERBOSE NIL))
 29: ((:INTERNAL (ASDF/OPERATE:OPERATE :AROUND (T T))))
 30: (ASDF/CACHE:CALL-WITH-ASDF-CACHE #<COMPILED-LEXICAL-CLOSURE (:INTERNAL (ASDF/OPERATE:OPERATE :AROUND (T T))) #xD0135A6> :OVERRIDE NIL :KEY NIL)
 31: (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :AROUND (T T)> ASDF/LISP-ACTION:LOAD-OP "cl-charms" :VERBOSE NIL)
 32: (CCL::%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :AROUND (T T)> (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :BEFORE #>) NIL ..) 11937396)
 33: (NIL #<Unknown Arguments>)
 34: (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :AROUND (T T)> ASDF/LISP-ACTION:LOAD-OP "cl-charms" :VERBOSE NIL)
 35: (CCL::%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :AROUND (T T)> (#<STANDARD-METHOD ASDF/OPERATE:OPERATE :BEFORE #>) NIL ..) 11937431)
 36: (NIL #<Unknown Arguments>)
 37: (QUICKLISP-CLIENT::CALL-WITH-MACROEXPAND-PROGRESS #<COMPILED-LEXICAL-CLOSURE (:INTERNAL QUICKLISP-CLIENT::APPLY-LOAD-STRATEGY) #xD0109E6>)
 38: (QUICKLISP-CLIENT::AUTOLOAD-SYSTEM-AND-DEPENDENCIES "cl-charms" :PROMPT NIL)
 39: (#<STANDARD-METHOD QL-IMPL-UTIL::%CALL-WITH-QUIET-COMPILATION (T T)> #<QL-IMPL:CCL #xC774F8E> #<COMPILED-LEXICAL-CLOSURE (:INTERNAL QUICKLISP-CLIENT::QL (QUICKLISP-CLIENT:QUICKLOAD (T))) #xCB9E8AE>)
 40: (#<STANDARD-METHOD QUICKLISP-CLIENT:QUICKLOAD (T)> (:CL-CHARMS) :PROMPT NIL :SILENT NIL :VERBOSE NIL)
 41: (CCL::%CALL-NEXT-METHOD ((NIL) #<STANDARD-METHOD QUICKLISP-CLIENT:QUICKLOAD (T)> :CL-CHARMS))
 42: (QL-DIST::CALL-WITH-CONSISTENT-DISTS #<COMPILED-LEXICAL-CLOSURE (:INTERNAL (QUICKLISP-CLIENT:QUICKLOAD :AROUND (T))) #xCB9EF86>)
 43: (CCL::%%STANDARD-COMBINED-METHOD-DCODE (#<STANDARD-METHOD QUICKLISP-CLIENT:QUICKLOAD :AROUND (T)> #<STANDARD-METHOD QUICKLISP-CLIENT:QUICKLOAD (T)>) 11937543)
 44: (NIL #<Unknown Arguments>)
 45: (CCL::CALL-CHECK-REGS QUICKLISP-CLIENT:QUICKLOAD :CL-CHARMS)
 46: (CCL::CHEAP-EVAL (QUICKLISP-CLIENT:QUICKLOAD :CL-CHARMS))
 47: (SWANK::EVAL-REGION "(ql:quickload :cl-charms)\n")
 48: ((:INTERNAL SWANK-REPL::REPL-EVAL))
 49: (SWANK-REPL::TRACK-PACKAGE #<COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK-REPL::REPL-EVAL) #xCB9F1FE>)
 50: (SWANK::CALL-WITH-RETRY-RESTART "Retry SLIME REPL evaluation request." #<COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK-REPL::REPL-EVAL) #xCB9F24E>)
 51: (SWANK::CALL-WITH-BUFFER-SYNTAX NIL #<COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK-REPL::REPL-EVAL) #xCB9F276>)
 52: (SWANK-REPL::REPL-EVAL "(ql:quickload :cl-charms)\n")
 53: (CCL::CALL-CHECK-REGS SWANK-REPL:LISTENER-EVAL "(ql:quickload :cl-charms)\n")
 54: (CCL::CHEAP-EVAL (SWANK-REPL:LISTENER-EVAL "(ql:quickload :cl-charms)\n"))
 55: (SWANK:EVAL-FOR-EMACS (SWANK-REPL:LISTENER-EVAL "(ql:quickload :cl-charms)\n") "COMMON-LISP-USER" 5)
 56: (SWANK::PROCESS-REQUESTS NIL)
 57: ((:INTERNAL SWANK::HANDLE-REQUESTS))
 58: ((:INTERNAL SWANK::HANDLE-REQUESTS))
 59: (SWANK/BACKEND:CALL-WITH-DEBUGGER-HOOK #<Compiled-function SWANK:SWANK-DEBUGGER-HOOK #xC9EF056> #<COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::HANDLE-REQUESTS) #xCB629DE>)
 60: (SWANK::CALL-WITH-BINDINGS ((*STANDARD-INPUT* . #<SWANK/GRAY::SLIME-INPUT-STREAM #xCB516DE>) (*STANDARD-OUTPUT* . #<SWANK/GRAY::SLIME-OUTPUT-STREAM #xCB514CE>) ..))) #<COMPILED-LEXICAL-CLOSURE (:INTER..
 61: (SWANK::HANDLE-REQUESTS #<MULTITHREADED-CONNECTION #xCA3FADE> NIL)
 62: (CCL::RUN-PROCESS-INITIAL-FORM #<PROCESS repl-thread(12) [Active] #xCB519FE> (#<COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #xCB518B6>))
 63: ((:INTERNAL (CCL::%PROCESS-PRESET-INTERNAL (PROCESS))) #<PROCESS repl-thread(12) [Active] #xCB519FE> (#<COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #xCB518B6>))
 64: ((:INTERNAL CCL::THREAD-MAKE-STARTUP-FUNCTION))

I use CCL 1.11,, emacs 24.5, slime 2.15 (all from a more up-to-date fork of lispbox) and the latest version of mingw-w64 (used the version from the ubuntu 14.04 repos when compiling on cloud9).

Could it possibly be related to me (re)defining my HOME variable in the .bat file that launches Emacs? because stuff (I recall quicklisp doing it) tried to use the WinXP user directory as %HOME% even though emacs & common lisp's getenv returns my custom HOME

Here's my lispbox.bat just in case it would help:

@echo off
rem Thanks to Venkat who provided this bit of COMMAND wizardry.

if NOT %OS%==Windows_NT goto checkhome
for %%i in ( "%CD%" ) do set LISPBOX_HOME=%%~si%
goto start

:checkhome

rem
rem if the environment variable is not defined, dereferencing
rem it produces the same string!
rem

if %LISPBOX_HOME%==%LISPBOX_HOME% goto noenv
:start

set EMACS=%LISPBOX_HOME%/emacs-24.5/bin/runemacs.exe
rem set TO_EVAL="(progn (load \"lispbox\") (slime) (delete-other-windows))"
set HOME=%LISPBOX_HOME%
/home

set PATH=%LISPBOX_HOME%\git\bin;%LISPBOX_HOME%\ccl-1.11;%LISPBOX_HOME%\Aspell\bin;%LISPBOX_HOME%\mingw\mingw32\bin;%PATH%
%EMACS% --insecure

goto end

:noenv

echo LISPBOX_HOME environment variable should be set and
echo point to the installation directory of LISPBOX before
echo launching this command.

:end
ohmree commented 7 years ago

I found this and will try to get it working tomorrow (enough windows-library-hunting for today)

stylewarning commented 6 years ago

@omrisim210 It fails during groveling. I think that it can't find the curses.h files.

armozel commented 5 years ago

@omrisim210 It fails during groveling. I think that it can't find the curses.h files.

Any idea how to resolve this issue? The read me for the project said it was tested on Windows but it doesn't indicate how it was setup (installation steps for pdcurses and the like).

stylewarning commented 5 years ago

CC @HiTECNOLOGYs

priyadarshan commented 5 years ago

Hello,

I am experiencing a similar issue with LispWorks 7.1.1 on Windows 10:

(ql:quickload :cl-charms)
To load "cl-charms":
  Load 4 ASDF systems:
    alexandria asdf cffi cffi-grovel
  Install 1 Quicklisp release:
    cl-charms
; Fetching #<QL-HTTP:URL "http://beta.quicklisp.org/archive/cl-charms/2018-12-10/cl-charms-20181210-git.tgz">
; 26.35KB
==================================================
26,980 bytes in 0.00 seconds (26347.66KB/sec)
; Loading "cl-charms"
[package cl-charms/low-level]; gcc -o "C:\Users\priyadarshan\AppData\Local\cache\common-lisp\lw-7.1.1-win-x64\C\home\quicklisp\dists\quicklisp\software\cl-charms-20181210-git\src\low-level\curses-grovel__grovel-tmpXPATEFP2.obj" -c -m64 "-IC:\home\quicklisp\dists\quicklisp\software\cffi_0.20.0\\" "C:\Users\priyadarshan\AppData\Local\cache\common-lisp\lw-7.1.1-win-x64\C\home\quicklisp\dists\quicklisp\software\cl-charms-20181210-git\src\low-level\curses-grovel__grovel.c"
.
Error: Subprocess with command ("gcc" "-o" "C:\\Users\\priyadarshan\\AppData\\Local\\cache\\common-lisp\\lw-7.1.1-win-x64\\C\\home\\quicklisp\\dists\\quicklisp\\software\\cl-charms-20181210-git\\src\\low-level\\curses-grovel__grovel-tmpXPATEFP2.obj" "-c" "-m64" "-IC:\\home\\quicklisp\\dists\\quicklisp\\software\\cffi_0.20.0\\" "C:\\Users\\priyadarshan\\AppData\\Local\\cache\\common-lisp\\lw-7.1.1-win-x64\\C\\home\\quicklisp\\dists\\quicklisp\\software\\cl-charms-20181210-git\\src\\low-level\\curses-grovel__grovel.c")
 exited with error code 1
  1 (continue) Retry #<CFFI-GROVEL::PROCESS-OP > on
#<CFFI-GROVEL:GROVEL-FILE "cl-charms" "low-level" "curses-grovel">.
  2 Continue, treating #<CFFI-GROVEL::PROCESS-OP > on
#<CFFI-GROVEL:GROVEL-FILE "cl-charms" "low-level" "curses-grovel">
    as having been successful.
  3 Retry ASDF operation.
  4 Retry ASDF operation after resetting the configuration.
  5 Retry ASDF operation.
  6 Retry ASDF operation after resetting the configuration.
  7 (abort) Give up on "cl-charms"
  8 Return to top loop level 0.

Type :b for backtrace or :c <option number> to proceed.
Type :bug-form "<subject>" for a bug report template or :? for other options.

gcc.exe is

gcc.exe --version
gcc.exe (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 8.1.0

I would be happy to test further, but I would need some pointers on how to set it up on Windows.

stylewarning commented 5 years ago

I don't have a Windows box to test, but it looks to me that the CC environment variable needs to be set. Any chance you could try that?

priyadarshan commented 5 years ago

Thank you, CC was missing. I set the CC env variable to my local gcc exe, but still having compilation issues.

I'm sorry I can't help much here side, I am not knowledgeable with compilation issues.

? (ql:quickload :cl-charms)
To load "cl-charms":
  Load 1 ASDF system:
    cl-charms
; Loading "cl-charms"
; "C:\ProgramData\scoop\apps\gcc\current\bin\gcc.EXE" -o C:/Users/priyadarshan/AppData/Local/cache/common-lisp/ccl-1.11-f96-win-x64/C/Users/priyadarshan/quicklisp/dists/quicklisp/software/cl-charms-20181210-git/src/low-level/curses-grovel__grovel-tmpGPVOA4HS.obj -c -m64 -IC:/Users/priyadarshan/quicklisp/dists/quicklisp/software/cffi_0.20.0/ C:/Users/priyadarshan/AppData/Local/cache/common-lisp/ccl-1.11-f96-win-x64/C/Users/priyadarshan/quicklisp/dists/quicklisp/software/cl-charms-20181210-git/src/low-level/curses-grovel__grovel.c
> Error: Subprocess (:PROCESS #<EXTERNAL-PROCESS (#1=C:\ProgramData\scoop\apps\gcc\current\bin\gcc.EXE . #2=(-o C:/Users/priyadarshan/AppData/Local/cache/common-lisp/ccl-1.11-f96-win-x64/C/Users/priyadarshan/quicklisp/dists/quicklisp/software/cl-charms-20181210-git/src/low-level/curses-grovel__grovel-tmpGPVOA4HS.obj ...))[NIL] (EXITED : 1) #x2101DE518D>)
>         with command (#1# . #2#)
>         exited with error code 1
> While executing: CFFI-GROVEL:GROVEL-ERROR, in process listener(1).
> Type :POP to abort, :R for a list of available restarts.
> Type :? for other options.
1 >

I tried with sbcl both on WIndows and on WSL (Ubuntu on Windows). Both fails as well. Results from the sbcl on WSL,

* (ql:quickload :cl-charms)
To load "cl-charms":
  Load 1 ASDF system:
    cl-charms
; Loading "cl-charms"
[package cl-charms/low-level]; cc -o /mnt/c/home/.cache/common-lisp/sbcl-1.4.5.debian-linux-x64/mnt/c/home/quicklisp/dists/quicklisp/software/cl-charms-20181210-git/src/low-level/curses-grovel__grovel-tmp4WZVROCX.o -c -g -O2 -fdebug-prefix-map=/build/sbcl-Y6O0EJ/sbcl-1.4.5=. -fstack-protector-strong -Wformat -Werror=format-security -g -Wall -Wundef -Wsign-compare -Wpointer-arith -O3 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -fno-omit-frame-pointer -momit-leaf-frame-pointer -fno-pie -fPIC -I/mnt/c/home/quicklisp/dists/quicklisp/software/cffi_0.20.0/ /mnt/c/home/.cache/common-lisp/sbcl-1.4.5.debian-linux-x64/mnt/c/home/quicklisp/dists/quicklisp/software/cl-charms-20181210-git/src/low-level/curses-grovel__grovel.c
/mnt/c/home/.cache/common-lisp/sbcl-1.4.5.debian-linux-x64/mnt/c/home/quicklisp/dists/quicklisp/software/cl-charms-20181210-git/src/low-level/curses-grovel__grovel.c:6:10: fatal error: ncurses.h: No such file or directory
 #include <ncurses.h>
          ^~~~~~~~~~~
compilation terminated.

debugger invoked on a CFFI-GROVEL:GROVEL-ERROR in thread #<THREAD "main thread" RUNNING {10005E85B3}>: Subprocess #<UIOP/LAUNCH-PROGRAM::PROCESS-INFO {100BCD11B3}>
 with command ("cc" "-o" "/mnt/c/home/.cache/common-lisp/sbcl-1.4.5.debian-linux-x64/mnt/c/home/quicklisp/dists/quicklisp/software/cl-charms-20181210-git/src/low-level/curses-grovel__grovel-tmp4WZVROCX.o" "-c" "-g" "-O2" "-fdebug-prefix-map=/build/sbcl-Y6O0EJ/sbcl-1.4.5=." "-fstack-protector-strong" "-Wformat" "-Werror=format-security" "-g" "-Wall" ...)
 exited with error code 1

Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.

restarts (invokable by number or by possibly-abbreviated name):
  0: [RETRY                        ] Retry #<PROCESS-OP > on #<GROVEL-FILE "cl-charms" "low-level" "curses-grovel">.
  1: [ACCEPT                       ] Continue, treating #<PROCESS-OP > on #<GROVEL-FILE "cl-charms" "low-level" "curses-grovel"> as having been successful.
  2:                                 Retry ASDF operation.
  3: [CLEAR-CONFIGURATION-AND-RETRY] Retry ASDF operation after resetting the configuration.
  4:                                 Retry ASDF operation.
  5:                                 Retry ASDF operation after resetting the configuration.
  6: [ABORT                        ] Give up on "cl-charms"
  7:                                 Exit debugger, returning to top level.

(CFFI-GROVEL:GROVEL-ERROR "~a" #<UIOP/RUN-PROGRAM:SUBPROCESS-ERROR {100BCD3D43}>)
   source: (ERROR (QUOTE GROVEL-ERROR) :FORMAT-CONTROL FORMAT-CONTROL :FORMAT-ARGUMENTS FORMAT-ARGUMENTS)
0]

It seems <ncurses.h> cannot be found?

stylewarning commented 5 years ago

That's my assessment. Usually C finds this stuff with a -I argument to indicate include directories.

priyadarshan commented 5 years ago

Thank you. Trying on Windows was adding an extra layer, so I tried on Ubuntu 18.04, still with compilation errors. libncurses5 shared libraries for terminal handling are installed and available system-wide.

I am not going further on this, it is clearly beyond my understanding on how to compile things.

This was useful, though, to realise that quicklisp does not help much when third party non-lisp libraries are required.

Thank you for the time and advice.

stylewarning commented 5 years ago

@priyadarshan Thanks for the effort. This is an important thing and we need to fix it.

priyadarshan commented 4 years ago

Still trying to have cl-charms on LispWorks for Windows. It seems lem uses cl-charms library to interface with PDCurses, although it requires an older version of PDCurses.

Hamayama commented 4 years ago

Hello, there are some information to install PDCurses on MSYS2/MinGW-w64.

  1. https://github.com/cxxxr/lem/issues/454 [Windows] [lem-pdcurses] MSYS2/MinGW-w64 PDCurses package version 4 is broken

  2. https://github.com/cxxxr/lem/wiki/Windows-Platform Lem Wiki - Windows Platform

They needs a manual copy operation for cl-charms as follows. cp -i /mingw64/include/pdcurses.h /mingw64/include/ncurses.h .