64ビットJVMでは、Linuxでは、ネイティブライブラリのロードは、32ビットライブラリのロードを試みることを要求します。
私はこれをclojureおよび(さらに)javan00bとして求めています。
私がこれまでに見つけた答え(Leiningen / Clojureでlwjglを使用すると、検索結果で最も目立つようです)は、project.cljの:native-dependenciesまたはLD_LIBRARY_PATHの周りで問題が渦巻く、古いバージョンのleinのようです。
私は車輪の再発明を行い、基本的なjMEチュートリアルを、両方を学ぶためのちょっとした個人的な宿題としてclojureに変換しています。これまでに私が見つけたすべてのチュートリアルと例で、これをどのように行ったかを示している人々の中で、この部分は「うまく機能している」ようです。
(それは、Windowsの下で私にとってはうまくいきました)。
私はleinを使用して、新しい空のプロジェクトを構築しています。clojar上のjMonkeyEngineライブラリのさまざまなバージョンへの依存関係を設定しました。'lein deps'の後、liblwjgl64.soとlibopenal64.soがプロジェクトディレクトリのルートに表示されます。
'lein run'を実行しようとすると、設定のモンキースプラッシュ画面が表示され、liblwjgl.soをロードしようとしているため、実際に実行しようとすると例外がスローされます。
そのファイルは、target / native/linuxおよびtarget/native / linux64の下にあります(ただし、奇妙なことに、target / native / linux32の下にはありません)。
必要なファイルをプロジェクトのルートにコピーすると、エラーが「間違ったELFクラス:ELFCLASS32(考えられる原因:アーキテクチャの単語幅の不一致)」に変わります。これは、Googleが私に提供し続ける他の一連のディスカッションです。そこに記載されている解決策はすべて「Minecraftを機能させるために32ビットJVMに切り替える」ことになるようですが、実際に何が起こっているのかについての手がかりを得たいと思います。
この問題は、clojarで手に入れることができる依存関係ライブラリのすべてのセットで非常に一貫しています(とにかく、バージョン2に戻ります...それらには、掘り下げる価値がないように思われる大きな問題がありました)。チャールズステインセット「JustWorked」を窓に貼ってくれました。
私がこれまでに思いついた最高の仮説は、これらの線に沿って何かを実行します。
ある時点でバージョンを指定する必要があるのではないかと思います。http://docs.oracle.com/javase/7/docs/technotes/guides/javaws/developersguide/syntax.html#resourcesは、完全に適合しているように見えるリソースプロパティについて言及していますが、これには何もありません。 JNLPで行います。.jarのどこかに、見つけられなかったマニフェストファイルがあるかどうか疑問に思っています(ここで私のn00bishnessが機能します...私が探しているものの手がかりが本当にありません)。
それで、誰かが私がどこを見るべきか、または私が誰に尋ねるべきかについての指針を持っていますか?ここからどこへ行けばいいのかわからない。jMonkeyEngineフォーラム、#clojure、またはlwjglメーリングリスト(またはそれらが使用するものは何でも...私は実際に彼らの側をまったく調べていません...私はすべきですか?)
次に試すのは、jMEライブラリを自分のリポジトリにバンドルすることです。それは、私がその角度に取り組んでいる間、私がここで尋ねることに決めた、大きくて気が遠くなるような十分な仕事のように思えます。
私はこれが曖昧であることを知っています、そして私はそれをお詫びします。私のgoogle-fuは私に失敗しました。誰でも思いつくことができる提案をいただければ幸いです。
前もって感謝します!