Solution
(1) (println (. System getProperty "java.library.path"))
这给了我一个 java 寻找本机扩展的位置列表。
然后,我获取了 lwjgl 本机扩展,并将它们放在那里。
对我不起作用的东西(可能是因为我错误地使用了它们)
(*) setting :native-path
(*) setting :native-dependencies
Problem
我的设置:
(lein deps; echo "====="; cat project.clj; echo "====="; cat src/main.clj; echo "====="; lein repl) &> log
“日志”的内容
Copying 10 files to /Volumes/ramdisk/fail/lib
=====
(defproject
mincase "0.0.1"
:dependencies [[org.clojure/clojure "1.4.0"]
[org.lwjgl.lwjgl/lwjgl "2.8.2"] ]
:repositories {"local" "/Users/x/z/maven_repo"}
:jvm-opts ["-Xms4g" "-Xmx4g"]
:repl-init main
)
=====
(ns main
(:import org.lwjgl.opengl.Display))
=====
REPL started; server listening on localhost port 31235
UnsatisfiedLinkError no lwjgl in java.library.path java.lang.ClassLoader.loadLibrary (ClassLoader.java:1860)
clojure.core=>
注意——我已经完成了“lein deps”,因此lwjgl库已被拉入maven。我不明白的是:
(*) how do I get access to lwjgl from Clojure?
(*) more importantly, how do I debug which step this whole thing has gone wrong at?
$ 查找库
lib
lib/clojure-1.4.0.jar
lib/jinput-2.0.5.jar
lib/jinput-platform-2.0.5-natives-linux.jar
lib/jinput-platform-2.0.5-natives-osx.jar
lib/jinput-platform-2.0.5-natives-windows.jar
lib/jutils-1.0.0.jar
lib/lwjgl-2.8.2.jar
lib/lwjgl-platform-2.8.2-natives-linux.jar
lib/lwjgl-platform-2.8.2-natives-osx.jar
lib/lwjgl-platform-2.8.2-natives-windows.jar
看来lwjgl已经被拉进来了。
我应该采取哪些步骤来找出我做错了哪一步?
Thanks!
由于谷歌发现了这篇文章来解决我的类似问题,因此将这条注释放在这里。
莱宁根人现在已经解决了这个问题:https://github.com/technomancy/leiningen/issues/898
如果您使用的是 2.1.0 或更高版本,则已修复。有关详细信息,请参阅错误。
更新:(2013 年 8 月)
我在 github 上有一个项目,用于在这里进行 lwjgl 实验:https://github.com/rogerallen/hello_lwjgl
我还在我的 Shadertone 项目中使用了 LWJGL:https://github.com/overtone/shadertone因为 Shadertone 是一个库,所以我发现我需要自己打包本机,以便为依赖于 Shadertone 的项目合理安装它。
如果有人对 LWJGL 人员有一定的吸引力,那么如果他们按照 lein 在其 clojars 版本中所期望的那样将本机放入适当的子目录中,那肯定会很好。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)