On Tue, Feb 16, 2010 at 1:53 PM, Tobias Rautenkranz <span dir="ltr"><<a href="mailto:tobias@rautenkranz.ch">tobias@rautenkranz.ch</a>></span> wrote:<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div class="im"><br>
> However, when I attempt to load cl-smoke.qt.core in sbcl, cffi throws fits,<br>
> first because your cffi:define-foreign-library statements are missing a<br>
> :darwin case (and all of the libraries compiled with a .dylib extension,<br>
> instead of a .so extension), and second because it refuses to find the<br>
> libraries even when I have put them on cffi:*foreign-library-directories*.<br>
<br>
</div>This is not clear to me. You have added the :darwin case, set<br>
cffi:*foreing-library-directories* and the libraries (which?) where not found?<br>
</blockquote></div><div><br></div><div><div>Here are the changes which I have made in my attempts to make cl-smoke compile (beyond the ones already mentioned on this list):</div><div><br></div><div><div>hunk ./src/libsmoke/smoke.lisp 6</div>
<div>+ (:darwin "libsmokeqtcore.3.darwin")</div><div>hunk ./src/libsmoke/smoke.lisp 10</div><div>+ (:darwin "libclsmoke.dylib")</div><div>hunk ./src/libsmoke/smoke.lisp 14</div><div>+ (:darwin "libclsmokeutil.dylib")</div>
<div>hunk ./src/smoke.lisp 175</div><div>+ (:darwin ,(format nil "~(~A~).3.dylib" library))</div></div></div><br>And here are the steps I'm taking to load cl-smoke:<div><br></div><div>* (asdf:oos 'asdf:load-op :cffi)</div>
<div>* (push #p"/opt/local/lib/" cffi:*foreign-library-directories*)<br clear="all">* (asdf:oos 'asdf:load-op :cl-smoke.qt.examples)</div><div>[ ... initial output omitted ... ]</div><div><div>; compiling file "/Users/elliott/Programming/Lisp/asdf/smoke/src/libsmoke/smoke.lisp" (written 15 FEB 2010 03:28:32 PM):</div>
<div>; compiling (IN-PACKAGE #:SMOKE)</div><div>; compiling (DEFINE-FOREIGN-LIBRARY LIBSMOKEQT ...)</div><div>; compiling (DEFINE-FOREIGN-LIBRARY LIBCLSMOKE ...)</div><div>; compiling (DEFINE-FOREIGN-LIBRARY LIBCLSMOKEUTIL ...)</div>
<div>; compiling (USE-FOREIGN-LIBRARY LIBSMOKEQT)</div><div>; file: /Users/elliott/Programming/Lisp/asdf/smoke/src/libsmoke/smoke.lisp</div><div>; in: EVAL-WHEN (:LOAD-TOPLEVEL :COMPILE-TOPLEVEL :EXECUTE)</div><div>; (CFFI:USE-FOREIGN-LIBRARY SMOKE::LIBSMOKEQT)</div>
<div>; ==></div><div>; (CFFI:LOAD-FOREIGN-LIBRARY 'SMOKE::LIBSMOKEQT)</div><div>; </div><div>; caught ERROR:</div><div>; (during compile-time-too processing)</div><div>; Unable to load foreign library (LIBSMOKEQT).</div>
<div>; Error opening shared object "libsmokeqtcore.3.darwin":</div><div>; dlopen(3) failed.</div><div><br></div><div>; compiling (USE-FOREIGN-LIBRARY LIBCLSMOKE)</div><div>; file: /Users/elliott/Programming/Lisp/asdf/smoke/src/libsmoke/smoke.lisp</div>
<div>; in: EVAL-WHEN (:LOAD-TOPLEVEL :COMPILE-TOPLEVEL :EXECUTE)</div><div>; (CFFI:USE-FOREIGN-LIBRARY SMOKE::LIBCLSMOKE)</div><div>; ==></div><div>; (CFFI:LOAD-FOREIGN-LIBRARY 'SMOKE::LIBCLSMOKE)</div><div>; </div>
<div>; caught ERROR:</div><div>; (during compile-time-too processing)</div><div>; Unable to load foreign library (LIBCLSMOKE).</div><div>; Error opening shared object "/opt/local/lib/libclsmoke.0.0.1.dylib":</div>
<div>; dlopen(3) failed.</div><div>[ ... further compile errors ... ]</div></div><div><br></div><div>All of the dylib files mentioned above are present in my /opt/local/lib directory.</div><div><div><br></div><div>Thanks again for helping me sort this out.</div>
</div><div><br>-- <br>Elliott Slaughter<br><br>"Don't worry about what anybody else is going to do. The best way to predict the future is to invent it." - Alan Kay<br>
</div>