Skip to content

Compile error with MacPorts' sbcl #32

Open
@jrjsmrtn

Description

@jrjsmrtn

I'm trying to install common-lisp-jupyter on macOS 10.14.4 with MacPorts 2.5.4 but got this:

$ sbcl --noinform --eval '(ql:update-dist "quicklisp")' --quit
You already have the latest version of "quicklisp": 2019-03-07.

$ sbcl --noinform --eval '(ql:quickload :common-lisp-jupyter)' --quit
To load "common-lisp-jupyter":
  Load 1 ASDF system:
    common-lisp-jupyter
; Loading "common-lisp-jupyter"
...; /usr/bin/clang -o /Users/gm/.cache/common-lisp/sbcl-1.5.0-macosx-x64/Users/gm/quicklisp/dists/quicklisp/software/pzmq-20171019-git/grovel__grovel-tmpGHU3ALSV.o -c -g -Wall -Wundef -Wsign-compare -Wpointer-arith -O3 -g -Wall -O2 -fdollars-in-identifiers -mmacosx-version-min=10.14 -D_DARWIN_USE_64_BIT_INODE -arch x86_64 -fno-omit-frame-pointer -fPIC -I/Users/gm/quicklisp/dists/quicklisp/software/cffi_0.20.0/ /Users/gm/.cache/common-lisp/sbcl-1.5.0-macosx-x64/Users/gm/quicklisp/dists/quicklisp/software/pzmq-20171019-git/grovel__grovel.c
./Users/gm/.cache/common-lisp/sbcl-1.5.0-macosx-x64/Users/gm/quicklisp/dists/quicklisp/software/pzmq-20171019-git/grovel__grovel.c:6:10: fatal error: 'zmq.h' file not found
#include <zmq.h>
         ^~~~~~~
1 error generated.

debugger invoked on a CFFI-GROVEL:GROVEL-ERROR in thread #<THREAD "main thread" RUNNING {10005C85B3}>: Subprocess #<UIOP/LAUNCH-PROGRAM::PROCESS-INFO {1004847CF3}>
 with command ("/usr/bin/clang" "-o" "/Users/gm/.cache/common-lisp/sbcl-1.5.0-macosx-x64/Users/gm/quicklisp/dists/quicklisp/software/pzmq-20171019-git/grovel__grovel-tmpGHU3ALSV.o" "-c" "-g" "-Wall" "-Wundef" "-Wsign-compare" "-Wpointer-arith" "-O3" "-g" "-Wall" ...)
 exited with error code 1

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

ZeroMQ 4.3.1 is installed through MacPorts and its headers are in /opt/local/include:

$ port installed | grep zmq
  py36-zmq @18.0.1_0 (active)
  zmq @4.3.1_0 (active)

$ ls /opt/local/include/zmq*
/opt/local/include/zmq.h       /opt/local/include/zmq_utils.h

A quick, naïve look into cffi seems to indicate that it knows about MacPorts' /opt/local/include directory:

quicklisp/dists/quicklisp/software/cffi_0.20.0/libffi/libffi-types.lisp
32-
33-;; When installed through Mac Ports, libffi include files
34:;; will be found in /opt/local/include.
35-#+darwin
36:(cc-flags "-I/opt/local/include/")
37-
38-#+openbsd

quicklisp/dists/quicklisp/software/cffi_0.20.0/toolchain/c-toolchain.lisp
210-           arch-flags
211-           ;; For MacPorts
212:           #+darwin (list "-I" "/opt/local/include/")
213-           ;; ECL internal flags
214-           #+ecl (parse-command-flags c::*cc-flags*)

Any suggestion?

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions