※2016/10/10現在 未解決
環境
Windows10
LispBox (February 6, 2011)
問題点
QuickLispを利用してLispBoxで(ql:quickload :cl-glut)
がうまくいかず以下のようなエラーが出る
"freeglut.dll"が開けないっぽい
Unable to load foreign library (GLUT).
Error opening shared library freeglut.dll : .
[Condition of type CFFI:LOAD-FOREIGN-LIBRARY-ERROR]
Restarts:
0: [RETRY] Try loading the foreign library again.
1: [USE-VALUE] Use another library instead.
2: [LOAD-SOURCE] Load "c:/DEVELO~1/LISPBO~1.6-W/LISPBO~1.7/quicklisp/dist..." instead of "C:/Users/SMYKZS/AppData/Roaming/common-lisp/cache/..."
3: [RECOMPILE] Compile "c:/DEVELO~1/LISPBO~1.6-W/LISPBO~1.7/quicklisp/dist..." into "C:/Users/SMYKZS/AppData/Roaming/common-lisp/cache/..." then load "C:/Users/SMYKZS/AppData/Roaming/common-lisp/cache/..." again
4: [RETRY-LOAD] Retry loading #P"C:/Users/SMYKZS/AppData/Roaming/common-lisp/cache/ccl-1.6-f94-win-amd64/c/DEVELO~1/LISPBO~1.6-W/LISPBO~1.7/quicklisp/dists/quicklisp/software/cl-opengl-20110110-git/glut/library.wx64fsl"
5: [SKIP-LOAD] Skip loading #P"C:/Users/SMYKZS/AppData/Roaming/common-lisp/cache/ccl-1.6-f94-win-amd64/c/DEVELO~1/LISPBO~1.6-W/LISPBO~1.7/quicklisp/dists/quicklisp/software/cl-opengl-20110110-git/glut/library.wx64fsl"
--more--
Backtrace:
0: (CFFI::FL-ERROR "Unable to load foreign library (~A).~% ~A" CL-GLUT::GLUT "Error opening shared library freeglut.dll : .")
1: ((:INTERNAL CFFI::%DO-LOAD CFFI::%DO-LOAD-FOREIGN-LIBRARY) #<CFFI:FOREIGN-LIBRARY #x21016526DD> CL-GLUT::GLUT "freeglut.dll")
2: (CFFI:LOAD-FOREIGN-LIBRARY CL-GLUT::GLUT :SEARCH-PATH NIL)
3: (CCL::$FASL-LFUNCALL #<CCL::FASLSTATE #x490E47D>)
4: (CCL::%FASLOAD "C:/Users/SMYKZS/AppData/Roaming/common-lisp/cache/ccl-1.6-f94-win-amd64/c/DEVELO~1/LISPBO~1.6-W/LISPBO~1.7/quicklisp/dists/quicklisp/software/cl-opengl-20110110-git/glut/library.wx64fs..
5: (CCL::%LOAD #P"C:/Users/SMYKZS/AppData/Roaming/common-lisp/cache/ccl-1.6-f94-win-amd64/c/DEVELO~1/LISPBO~1.6-
......
対処法
freeglut.dllを特定のディレクトリに配置
freeglut.dllをビルドする
freeglutのソースコードをダウンロード
※今回使用したのはver3.0.0
DLしたtar gzファイルを解凍
> gzip -dc [filename] | tar xvf -
CMakeのインストール
※Freeglut 3.0.0ではVisual Studio用の.slnファイルがない模様
CMakeでエラーが出る場合
CとCXXのコンパイラがインストールされていない
詳しくはこちら
CMakeでfreeglut-3.0.0をコンパイルする
上段:freeglut-3.0.0のフォルダを選択
下段:[freeglut-3.0.0のフォルダ]/build
Configureをクリック
自分の環境(今回はVisual Studio 14 2015)を選択してFinishをクリック
Visual Studioでlib, dllをビルド
※実行中(2016/10/10)